--- mstools/h/stddef.h 2018/08/09 18:20:01 1.1.1.1 +++ mstools/h/stddef.h 2018/08/09 18:23:07 1.1.1.4 @@ -1,7 +1,7 @@ /*** *stddef.h - definitions/declarations for common constants, types, variables * -* Copyright (c) 1985-1991, Microsoft Corporation. All rights reserved. +* Copyright (c) 1985-1993, Microsoft Corporation. All rights reserved. * *Purpose: * This file contains definitions and declarations for some commonly @@ -17,10 +17,29 @@ extern "C" { #endif -#if (_MSC_VER <= 600) -#define __cdecl _cdecl +/* + * Conditional macro definition for function calling type and variable type + * qualifiers. + */ +#if ( (_MSC_VER >= 800) && (_M_IX86 >= 300) ) + +/* + * Definitions for MS C8-32 (386/486) compiler + */ +#define _CRTAPI1 __cdecl +#define _CRTAPI2 __cdecl + +#else + +/* + * Other compilers (e.g., MIPS) + */ +#define _CRTAPI1 +#define _CRTAPI2 + #endif + /* define NULL pointer value and the offset() macro */ #ifndef NULL @@ -38,7 +57,7 @@ extern "C" { /* declare reference to errno */ #ifdef _MT -extern int * _errno(void); +extern int * _CRTAPI1 _errno(void); #define errno (*_errno()) #else extern int errno; @@ -67,10 +86,9 @@ typedef unsigned short wchar_t; -extern unsigned long __threadid(void); +extern unsigned long _CRTAPI1 __threadid(void); #define _threadid (__threadid()) -extern unsigned long __threadhandle(void); -#define _threadhandle (__threadhandle()) +extern unsigned long _CRTAPI1 __threadhandle(void);