--- mstools/h/memory.h 2018/08/09 18:20:01 1.1 +++ mstools/h/memory.h 2018/08/09 18:21:05 1.1.1.3 @@ -1,7 +1,7 @@ /*** *memory.h - declarations for buffer (memory) manipulation routines * -* Copyright (c) 1985-1991, Microsoft Corporation. All rights reserved. +* Copyright (c) 1985-1992, Microsoft Corporation. All rights reserved. * *Purpose: * This include file contains the function declarations for the @@ -17,10 +17,38 @@ 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 + +#elif ( _MSC_VER == 600 ) + +/* + * Definitions for old MS C6-386 compiler + */ +#define _CRTAPI1 _cdecl +#define _CRTAPI2 _cdecl +#define _M_IX86 300 + +#else + +/* + * Other compilers (e.g., MIPS) + */ +#define _CRTAPI1 +#define _CRTAPI2 + #endif + #ifndef _SIZE_T_DEFINED typedef unsigned int size_t; #define _SIZE_T_DEFINED @@ -29,12 +57,12 @@ typedef unsigned int size_t; /* function prototypes */ -void * _memccpy(void *, const void *, int, unsigned int); -void * memchr(const void *, int, size_t); -int memcmp(const void *, const void *, size_t); -void * memcpy(void *, const void *, size_t); -int _memicmp(const void *, const void *, unsigned int); -void * memset(void *, int, size_t); +void * _CRTAPI1 _memccpy(void *, const void *, int, unsigned int); +void * _CRTAPI1 memchr(const void *, int, size_t); +int _CRTAPI1 memcmp(const void *, const void *, size_t); +void * _CRTAPI1 memcpy(void *, const void *, size_t); +int _CRTAPI1 _memicmp(const void *, const void *, unsigned int); +void * _CRTAPI1 memset(void *, int, size_t); #if !__STDC__ /* Non-ANSI names for compatibility */