diff options
Diffstat (limited to 'include/psxtypes/compiler/__nt_compiler_msvc.h')
-rw-r--r-- | include/psxtypes/compiler/__nt_compiler_msvc.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/include/psxtypes/compiler/__nt_compiler_msvc.h b/include/psxtypes/compiler/__nt_compiler_msvc.h index b441221..c865706 100644 --- a/include/psxtypes/compiler/__nt_compiler_msvc.h +++ b/include/psxtypes/compiler/__nt_compiler_msvc.h @@ -53,11 +53,6 @@ #define __X86_64_MODEL __amd64 #endif - -/* va_list */ -#define __CUSTOM_OR_BUILTIN_va_list__ char * - - /* compiler keywords */ #define __in #define __out @@ -127,4 +122,20 @@ #define NTAPI __stdcall #define WINAPI __stdcall +/* vararg */ +typedef char * va_list; + +#if defined(__NT32) +void __cdecl __va_start(char ** ,...); +#define __va_size(l) (((sizeof(void *)-1) + sizeof(l)) & ~(sizeof(void *)-1)) +#define va_start(v,l) ((void)(v = (char *)((&(l)) + __va_size(l)))) +#define va_end(v) ((void)(v = 0)) +#endif + +#if defined(__NT64) +void __cdecl __va_start(char ** ,...); +#define va_start(v,l) ((void)(__va_start(&v, l))) +#define va_end(v) ((void)(v = 0)) +#endif + #endif /* _PSXTYPES_NT_COMPILER_MSVC_H_ */ |