aa2a8615a344a36d59b631350ae5d65c0e0abb3f
[fw/sdcc] / device / include / stdarg.h
1 /*-----------------------------------------------------------------------------------*/
2 /* stdarg.h - ANSI macros for variable parameter list                                */
3 /*-----------------------------------------------------------------------------------*/
4
5 #ifndef __SDC51_STDARG_H
6 #define __SDC51_STDARG_H 1
7
8 #ifdef SDCC_USE_XSTACK
9
10 typedef unsigned char _pdata * va_list ;
11 #define va_arg(marker,type)   *((type _data * )(marker -= sizeof(type)))
12 #define va_start(marker,first)  { marker = (va_list) ((char _pdata * )&first) ; }
13
14 #else
15
16 typedef unsigned char _data *  va_list ;
17 #define va_arg(marker,type)   *((type _data * )(marker -= sizeof(type)))
18 #define va_start(marker,first)  { marker = (va_list) ((char _data * )&first) ; }
19
20 #endif
21
22 #define va_end(marker) marker = (va_list) 0;
23
24 #endif