Author: tkreuzer Date: Sun Dec 21 23:55:21 2008 New Revision: 38266
URL: http://svn.reactos.org/svn/reactos?rev=38266&view=rev Log: Move all stuff from _mingw.h to crtdefs.h that belongs there. Get rid off MINGW_IMPORT
Modified: trunk/reactos/include/crt/_mingw.h trunk/reactos/include/crt/crtdefs.h trunk/reactos/include/crt/time.h
Modified: trunk/reactos/include/crt/_mingw.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/_mingw.h?rev=38... ============================================================================== --- trunk/reactos/include/crt/_mingw.h [iso-8859-1] (original) +++ trunk/reactos/include/crt/_mingw.h [iso-8859-1] Sun Dec 21 23:55:21 2008 @@ -4,11 +4,12 @@ * No warranty is given; refer to the file DISCLAIMER within this package. */
-#ifndef _INC_CRTDEFS -#define _INC_CRTDEFS +#ifndef _INC_MINGW +#define _INC_MINGW
#define _INTEGRAL_MAX_BITS 64
+// ROS HACK! #ifndef _WIN64 #ifndef _USE_32BIT_TIME_T #define _USE_32BIT_TIME_T @@ -30,69 +31,14 @@ #define __stdcall #endif
-#if defined(_MSC_VER) -# ifdef _DLL -# ifndef __MINGW_IMPORT -# define __MINGW_IMPORT __declspec(dllimport) -# endif -# ifndef _CRTIMP -# define _CRTIMP __declspec(dllimport) -# endif -# else -# ifndef __MINGW_IMPORT -# define __MINGW_IMPORT -# endif -# ifndef _CRTIMP -# define _CRTIMP -# endif -# endif -# define __DECLSPEC_SUPPORTED +#ifdef __GNUC__ + /* These compilers do support __declspec */ +# if !defined(__MINGW32__) && !defined(__MINGW64__) && !defined(__CYGWIN32__) +# define __declspec(x) __attribute__((x)) +# endif +#else # define __attribute__(x) /* nothing */ -# define __restrict__ /* nothing */ -#elif defined(__GNUC__) -# ifdef __declspec -# ifndef __MINGW_IMPORT -# ifdef _DLL -/* Note the extern. This is needed to work around GCC's -limitations in handling dllimport attribute. */ -# define __MINGW_IMPORT extern __attribute__ ((__dllimport__)) -# else -# define __MINGW_IMPORT extern -# endif -# endif -# ifndef _CRTIMP -# undef __USE_CRTIMP -# if !defined (_CRTBLD) && !defined (_SYSCRT) -# define __USE_CRTIMP 1 -# endif -# ifdef __USE_CRTIMP -# ifdef _DLL -# define _CRTIMP __attribute__ ((dllimport)) -# else -# define _CRTIMP -# endif -# else -# define _CRTIMP -# endif -# endif -# define __DECLSPEC_SUPPORTED -# else /* __declspec */ -# undef __DECLSPEC_SUPPORTED -# undef __MINGW_IMPORT -# ifndef _CRTIMP -# define _CRTIMP -# endif -# endif /* __declspec */ -#else -# ifndef __MINGW_IMPORT -# define __MINGW_IMPORT __declspec(dllimport) -# endif -# ifndef _CRTIMP -# define _CRTIMP __declspec(dllimport) -# endif -# define __DECLSPEC_SUPPORTED -# define __attribute__(x) /* nothing */ -#endif /* __GNUC__ */ +#endif
#if defined (__GNUC__) && defined (__GNUC_MINOR__) #define __MINGW_GNUC_PREREQ(major, minor) \ @@ -102,22 +48,12 @@ #define __MINGW_GNUC_PREREQ(major, minor) 0 #endif
-#if defined (_MSC_VER) -#define __MINGW_MSC_PREREQ(major,minor) \ - ((_MSC_VER /100) > (major) \ - || ((_MSC)VER /100) == (major) && (_MSC_VER) % 100) >=(minor))) -#else -#define __MINGW_MSC_PREREQ(major, minor) 0 -#endif - #define USE___UUIDOF 0
#ifdef __cplusplus # define __CRT_INLINE inline #else -# if defined(_MSC_VER) -# define __CRT_INLINE __inline -# elif __GNUC_STDC_INLINE__ +# if ( __MINGW_GNUC_PREREQ(4, 3) && __STDC_VERSION__ >= 199901L) # define __CRT_INLINE extern inline __attribute__((__gnu_inline__)) # else # define __CRT_INLINE extern __inline__ @@ -129,6 +65,16 @@ #else # ifdef __GNUC__ # define __UNUSED_PARAM(x) x __attribute__ ((__unused__)) +# else +# define __UNUSED_PARAM(x) x +# endif +#endif + +#ifdef __cplusplus +# define __unaligned +#else +# ifdef __GNUC__ +# define __unaligned __attribute((packed)) # else # define __UNUSED_PARAM(x) x # endif @@ -186,48 +132,25 @@ # define __MSVCRT_VERSION__ 0x0700 #endif
-#if defined(__GNUC__) -#define __mingw_va_start(v,l) __builtin_va_start(v,l) -#define __mingw_va_end(v) __builtin_va_end(v) -#define __mingw_va_arg(v,l) __builtin_va_arg(v,l) -#define __mingw_va_copy(d,s) __builtin_va_copy(d,s) -#elif defined(_MSC_VER) -#define __mingw_va_start(v,l) __msc_va_start(v,l) -#define __mingw_va_end(v) __msc_va_end(v) -#define __mingw_va_arg(v,l) __msc_va_arg(v,l) -#define __mingw_va_copy(d,s) __msc_va_copy(d,s) -#endif - //#ifndef WINVER //#define WINVER 0x0502 //#endif
-#ifndef _WIN32_WINNT -#define _WIN32_WINNT 0x502 -#endif - -#ifndef _INT128_DEFINED -#define _INT128_DEFINED +//#ifndef _WIN32_WINNT +//#define _WIN32_WINNT 0x502 +//#endif + #ifdef __GNUC__ #define __int8 char #define __int16 short #define __int32 int #define __int64 long long #ifdef _WIN64 - -typedef int __int128 __attribute__ ((mode (TI))); - -#endif - -#define __ptr32 -#define __ptr64 -#define __unaligned __attribute ((packed)) -#define __forceinline extern __inline -#endif -#endif - -#ifndef _WIN32 -#error Only Win32 target is supported! + typedef int __int128 __attribute__ ((mode (TI))); +# endif +# define __ptr32 +# define __ptr64 +# define __forceinline extern __inline __attribute((always_inline)) #endif
#ifdef __cplusplus @@ -240,188 +163,13 @@ #endif #endif
-#undef _CRT_PACKING -#define _CRT_PACKING 8 - #ifdef _WIN64 #undef USE_MINGW_SETJMP_TWO_ARGS #define USE_MINGW_SETJMP_TWO_ARGS #endif
-#pragma pack(push,_CRT_PACKING) - -#include <vadefs.h> - #ifdef __cplusplus extern "C" { -#endif - -#ifndef _CRT_STRINGIZE -#define __CRT_STRINGIZE(_Value) #_Value -#define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value) -#endif - -#ifndef _CRT_WIDE -#define __CRT_WIDE(_String) L ## _String -#define _CRT_WIDE(_String) __CRT_WIDE(_String) -#endif -#ifndef _W64 -#define _W64 -#endif - -#ifndef _CRTIMP_NOIA64 -#ifdef __ia64__ -#define _CRTIMP_NOIA64 -#else -#define _CRTIMP_NOIA64 _CRTIMP -#endif -#endif - -#ifndef _CRTIMP2 -#define _CRTIMP2 _CRTIMP -#endif - -#ifndef _CRTIMP_ALTERNATIVE -#define _CRTIMP_ALTERNATIVE _CRTIMP -#define _CRT_ALTERNATIVE_IMPORTED -#endif - -#ifndef _MRTIMP2 -#define _MRTIMP2 _CRTIMP -#endif - -#ifndef _DLL -#define _DLL -#endif - -#ifndef _MT -#define _MT -#endif - -#ifndef _MCRTIMP -#define _MCRTIMP _CRTIMP -#endif - -#ifndef _CRTIMP_PURE -#define _CRTIMP_PURE _CRTIMP -#endif - -#ifndef _PGLOBAL -#define _PGLOBAL -#endif - -#ifndef _AGLOBAL -#define _AGLOBAL -#endif - -#define __STDC_SECURE_LIB__ 200411L -#define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__ -#define _SECURECRT_FILL_BUFFER_PATTERN 0xFD -#define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated) - -#ifndef _CRT_INSECURE_DEPRECATE_MEMORY -#define _CRT_INSECURE_DEPRECATE_MEMORY(_Replacement) -#endif -#ifndef _CRT_INSECURE_DEPRECATE_GLOBALS -#define _CRT_INSECURE_DEPRECATE_GLOBALS(_Replacement) -#endif -#ifndef _CRT_MANAGED_HEAP_DEPRECATE -#define _CRT_MANAGED_HEAP_DEPRECATE -#endif - -#ifndef _CRT_OBSOLETE -#define _CRT_OBSOLETE(_NewItem) -#endif - -#ifndef _SIZE_T_DEFINED -#define _SIZE_T_DEFINED -#undef size_t -#ifdef _WIN64 -#if defined(__GNUC__) && defined(__STRICT_ANSI__) - typedef unsigned int size_t __attribute__ ((mode (DI))); -#else - typedef unsigned __int64 size_t; -#endif -#else - typedef unsigned int size_t; -#endif -#endif - -#ifndef _SSIZE_T_DEFINED -#define _SSIZE_T_DEFINED -#undef ssize_t -#ifdef _WIN64 -#if defined(__GNUC__) && defined(__STRICT_ANSI__) - typedef int ssize_t __attribute__ ((mode (DI))); -#else - typedef __int64 ssize_t; -#endif -#else - typedef int ssize_t; -#endif -#endif - -#ifndef _INTPTR_T_DEFINED -#define _INTPTR_T_DEFINED -#ifndef __intptr_t_defined -#define __intptr_t_defined -#undef intptr_t -#ifdef _WIN64 -#if defined(__GNUC__) && defined(__STRICT_ANSI__) - typedef int intptr_t __attribute__ ((mode (DI))); -#else - typedef __int64 intptr_t; -#endif -#else - typedef int intptr_t; -#endif -#endif -#endif - -#ifndef _UINTPTR_T_DEFINED -#define _UINTPTR_T_DEFINED -#ifndef __uintptr_t_defined -#define __uintptr_t_defined -#undef uintptr_t -#ifdef _WIN64 -#if defined(__GNUC__) && defined(__STRICT_ANSI__) - typedef unsigned int uintptr_t __attribute__ ((mode (DI))); -#else - typedef unsigned __int64 uintptr_t; -#endif -#else - typedef unsigned int uintptr_t; -#endif -#endif -#endif - -#ifndef _PTRDIFF_T_DEFINED -#define _PTRDIFF_T_DEFINED -#ifndef _PTRDIFF_T_ -#undef ptrdiff_t -#ifdef _WIN64 -#if defined(__GNUC__) && defined(__STRICT_ANSI__) - typedef int ptrdiff_t __attribute__ ((mode (DI))); -#else - typedef __int64 ptrdiff_t; -#endif -#else - typedef int ptrdiff_t; -#endif -#endif -#endif - -#ifndef _WCHAR_T_DEFINED -#define _WCHAR_T_DEFINED -#ifndef __cplusplus - typedef unsigned short wchar_t; -#endif -#endif - -#ifndef _WCTYPE_T_DEFINED -#define _WCTYPE_T_DEFINED - typedef unsigned short wint_t; - typedef unsigned short wctype_t; #endif
#ifndef __GNUC_VA_LIST @@ -434,128 +182,15 @@ typedef __gnuc_va_list va_list; #endif
-#ifdef _USE_32BIT_TIME_T -#ifdef _WIN64 -#error You cannot use 32-bit time_t (_USE_32BIT_TIME_T) with _WIN64 -#undef _USE_32BIT_TIME_T -#endif -#else -#if _INTEGRAL_MAX_BITS < 64 -#define _USE_32BIT_TIME_T -#endif -#endif - -#ifndef _ERRCODE_DEFINED -#define _ERRCODE_DEFINED - typedef int errcode; - typedef int errno_t; -#endif - -#ifndef _TIME32_T_DEFINED -#define _TIME32_T_DEFINED - typedef long __time32_t; -#endif - -#ifndef _TIME64_T_DEFINED -#define _TIME64_T_DEFINED -//#if _INTEGRAL_MAX_BITS >= 64 - typedef __int64 __time64_t; -#endif -//#endif - -#ifndef _TIME_T_DEFINED -#define _TIME_T_DEFINED -#ifdef _USE_32BIT_TIME_T - typedef __time32_t time_t; -#else - typedef __time64_t time_t; -#endif -#endif - -#ifndef _CONST_RETURN -#define _CONST_RETURN -#endif - -#ifndef __CRT_UNALIGNED -#define __CRT_UNALIGNED -#endif - -#ifndef UNALIGNED -#if defined(__ia64__) || defined(__x86_64) -//#define UNALIGNED __CRT_UNALIGNED -#else -#define UNALIGNED -#endif -#endif - -#ifndef _CRT_ALIGN -#define _CRT_ALIGN(x) __attribute__ ((aligned(x))) -#endif - -#ifndef _CRTNOALIAS -#define _CRTNOALIAS -#endif - -#ifndef _CRTRESTRICT -#define _CRTRESTRICT -#endif - -#ifndef __CRTDECL -#define __CRTDECL __cdecl -#endif - -#define _ARGMAX 100 - -#ifndef _TRUNCATE -#define _TRUNCATE ((size_t)-1) -#endif - struct threadlocaleinfostruct; - struct threadmbcinfostruct; - typedef struct threadlocaleinfostruct *pthreadlocinfo; - typedef struct threadmbcinfostruct *pthreadmbcinfo; - struct __lc_time_data; - - typedef struct localeinfo_struct { - pthreadlocinfo locinfo; - pthreadmbcinfo mbcinfo; - } _locale_tstruct,*_locale_t; - -#ifndef _TAGLC_ID_DEFINED -#define _TAGLC_ID_DEFINED - typedef struct tagLC_ID { - unsigned short wLanguage; - unsigned short wCountry; - unsigned short wCodePage; - } LC_ID,*LPLC_ID; -#endif - -#ifndef _THREADLOCALEINFO -#define _THREADLOCALEINFO - typedef struct threadlocaleinfostruct { - int refcount; - unsigned int lc_codepage; - unsigned int lc_collate_cp; - unsigned long lc_handle[6]; - LC_ID lc_id[6]; - struct { - char *locale; - wchar_t *wlocale; - int *refcount; - int *wrefcount; - } lc_category[6]; - int lc_clike; - int mb_cur_max; - int *lconv_intl_refcount; - int *lconv_num_refcount; - int *lconv_mon_refcount; - struct lconv *lconv; - int *ctype1_refcount; - unsigned short *ctype1; - const unsigned short *pctype; - const unsigned char *pclmap; - const unsigned char *pcumap; - struct __lc_time_data *lc_time_curr; - } threadlocinfo; +/* Diable deprecation for now! */ +#define _CRT_SECURE_NO_DEPRECATE +#define _CRT_SECURE_NO_DEPRECATE_CORE +#ifdef __WINESRC__ +#define _CRT_NONSTDC_NO_DEPRECATE +#endif + +#if (defined(_MSC_VER) && __STDC__)// || !defined(__WINESRC__) +#define NO_OLDNAMES #endif
#ifdef __cplusplus @@ -568,9 +203,7 @@ #define _CRT_UNUSED(x) (void)x #endif
-#pragma pack(pop) - -/* There are here for intrin.h */ +/* These are here for intrin.h */ #ifndef _SIZE_T_DEFINED #define _SIZE_T_DEFINED #ifdef _WIN64 @@ -591,5 +224,5 @@
#include <mingw32/intrin.h>
-#endif - +#endif /* !_INC_MINGW */ +
Modified: trunk/reactos/include/crt/crtdefs.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/crtdefs.h?rev=3... ============================================================================== --- trunk/reactos/include/crt/crtdefs.h [iso-8859-1] (original) +++ trunk/reactos/include/crt/crtdefs.h [iso-8859-1] Sun Dec 21 23:55:21 2008 @@ -4,3 +4,389 @@ * No warranty is given; refer to the file DISCLAIMER within this package. */ #include <_mingw.h> + +#ifndef _INC_CRTDEFS +#define _INC_CRTDEFS + +#ifdef _USE_32BIT_TIME_T +#ifdef _WIN64 +#error You cannot use 32-bit time_t (_USE_32BIT_TIME_T) with _WIN64 +#undef _USE_32BIT_TIME_T +#endif +#else +#if _INTEGRAL_MAX_BITS < 64 +#define _USE_32BIT_TIME_T +#endif +#endif + +/* Compatability definition */ +#if _MSC_VER > 0 && __STDC__ +#define NO_OLDNAMES +#endif + +/** Properties ***************************************************************/ + +#undef _CRT_PACKING +#define _CRT_PACKING 8 +#pragma pack(push,_CRT_PACKING) + +#ifndef _CRT_STRINGIZE +#define __CRT_STRINGIZE(_Value) #_Value +#define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value) +#endif + +#ifndef _CRT_WIDE +#define __CRT_WIDE(_String) L ## _String +#define _CRT_WIDE(_String) __CRT_WIDE(_String) +#endif + +#ifndef _W64 + #if !defined(_midl) && defined(_X86_) && _MSC_VER >= 1300 + #define _W64 __w64 + #else + #define _W64 + #endif +#endif + +#ifndef _CRTIMP + #ifdef _DLL + #define _CRTIMP __declspec(dllimport) + #else + #define _CRTIMP + #endif +#endif + +//#define _CRT_ALTERNATIVE_INLINES + +#ifndef _CRTIMP_ALT + #ifdef _DLL + #ifdef _CRT_ALTERNATIVE_INLINES + #define _CRTIMP_ALT + #else + #define _CRTIMP_ALT _CRTIMP + #define _CRT_ALTERNATIVE_IMPORTED + #endif + #else + #define _CRTIMP_ALT + #endif +#endif + +#ifndef _CRTDATA + #ifdef _M_CEE_PURE + #define _CRTDATA(x) x + #else + #define _CRTDATA(x) _CRTIMP x + #endif +#endif + +#ifndef _CRTIMP2 + #define _CRTIMP2 _CRTIMP +#endif + +#ifndef _CRTIMP_PURE + #define _CRTIMP_PURE _CRTIMP +#endif + +#ifndef _CRTIMP_ALTERNATIVE + #define _CRTIMP_ALTERNATIVE _CRTIMP + #define _CRT_ALTERNATIVE_IMPORTED +#endif + +#ifndef _CRTIMP_NOIA64 + #ifdef __ia64__ + #define _CRTIMP_NOIA64 + #else + #define _CRTIMP_NOIA64 _CRTIMP + #endif +#endif + +#ifndef _MRTIMP2 + #define _MRTIMP2 _CRTIMP +#endif + +#ifndef _MCRTIMP + #define _MCRTIMP _CRTIMP +#endif + +#ifndef _PGLOBAL + #define _PGLOBAL +#endif + +#ifndef _AGLOBAL + #define _AGLOBAL +#endif + +#ifndef _CONST_RETURN + #define _CONST_RETURN +#endif + +#ifndef UNALIGNED +#if defined(__ia64__) || defined(__x86_64) +#define UNALIGNED __unaligned +#else +#define UNALIGNED +#endif +#endif + +#ifndef _CRT_ALIGN +#define _CRT_ALIGN(x) __attribute__ ((aligned(x))) +#endif + +#ifndef _CRTNOALIAS +#define _CRTNOALIAS +#endif + +#ifndef _CRTRESTRICT +#define _CRTRESTRICT +#endif + +#ifndef __CRTDECL +#define __CRTDECL __cdecl +#endif + +#ifndef _CRT_UNUSED +#define _CRT_UNUSED(x) (void)x +#endif + +#ifndef _CONST_RETURN +#ifdef __cplusplus +#define _CONST_RETURN const +#define _CRT_CONST_CORRECT_OVERLOADS +#else +#define _CONST_RETURN +#endif +#endif + +#define __crt_typefix(ctype) + + +/** Deprecated ***************************************************************/ + +#define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated) + +#ifndef _CRT_INSECURE_DEPRECATE +# ifdef _CRT_SECURE_NO_DEPRECATE +# define _CRT_INSECURE_DEPRECATE(_Replacement) +# else +# define _CRT_INSECURE_DEPRECATE(_Replacement) \ + _CRT_DEPRECATE_TEXT("This may be unsafe, Try " #_Replacement " instead!") +# endif +#endif + +#ifndef _CRT_INSECURE_DEPRECATE_CORE +# ifdef _CRT_SECURE_NO_DEPRECATE_CORE +# define _CRT_INSECURE_DEPRECATE_CORE(_Replacement) +# else +# define _CRT_INSECURE_DEPRECATE_CORE(_Replacement) \ + _CRT_DEPRECATE_TEXT("This may be unsafe, Try " #_Replacement " instead! Enable _CRT_SECURE_NO_DEPRECATE to avoid thie warning.") +# endif +#endif + +#ifndef _CRT_NONSTDC_DEPRECATE +# ifdef _CRT_NONSTDC_NO_DEPRECATE +# define _CRT_NONSTDC_DEPRECATE(_Replacement) +# else +# define _CRT_NONSTDC_DEPRECATE(_Replacement) \ + _CRT_DEPRECATE_TEXT("Deprecated POSIX name, Try " #_Replacement " instead!") +# endif +#endif + +#ifndef _CRT_INSECURE_DEPRECATE_MEMORY +#define _CRT_INSECURE_DEPRECATE_MEMORY(_Replacement) +#endif + +#ifndef _CRT_INSECURE_DEPRECATE_GLOBALS +#define _CRT_INSECURE_DEPRECATE_GLOBALS(_Replacement) +#endif + +#ifndef _CRT_MANAGED_HEAP_DEPRECATE +#define _CRT_MANAGED_HEAP_DEPRECATE +#endif + +#ifndef _CRT_OBSOLETE +#define _CRT_OBSOLETE(_NewItem) +#endif + +/** Constants ****************************************************************/ + +#define _ARGMAX 100 + +#ifndef _TRUNCATE +#define _TRUNCATE ((size_t)-1) +#endif + +#define __STDC_SECURE_LIB__ 200411L +#define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__ +#define _SECURECRT_FILL_BUFFER_PATTERN 0xFD + + + +/** Type definitions *********************************************************/ + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef _SIZE_T_DEFINED +#define _SIZE_T_DEFINED +#undef size_t +#ifdef _WIN64 +#if defined(__GNUC__) && defined(__STRICT_ANSI__) + typedef unsigned int size_t __attribute__ ((mode (DI))); +#else + typedef unsigned __int64 size_t; +#endif +#else + typedef unsigned int size_t; +#endif +#endif + +#ifndef _INTPTR_T_DEFINED +#define _INTPTR_T_DEFINED +#ifndef __intptr_t_defined +#define __intptr_t_defined +#undef intptr_t +#ifdef _WIN64 +#if defined(__GNUC__) && defined(__STRICT_ANSI__) + typedef int intptr_t __attribute__ ((mode (DI))); +#else + typedef __int64 intptr_t; +#endif +#else + typedef int intptr_t; +#endif +#endif +#endif + +#ifndef _UINTPTR_T_DEFINED +#define _UINTPTR_T_DEFINED +#ifndef __uintptr_t_defined +#define __uintptr_t_defined +#undef uintptr_t +#ifdef _WIN64 +#if defined(__GNUC__) && defined(__STRICT_ANSI__) + typedef unsigned int uintptr_t __attribute__ ((mode (DI))); +#else + typedef unsigned __int64 uintptr_t; +#endif +#else + typedef unsigned int uintptr_t; +#endif +#endif +#endif + +#ifndef _PTRDIFF_T_DEFINED +#define _PTRDIFF_T_DEFINED +#ifndef _PTRDIFF_T_ +#undef ptrdiff_t +#ifdef _WIN64 +#if defined(__GNUC__) && defined(__STRICT_ANSI__) + typedef int ptrdiff_t __attribute__ ((mode (DI))); +#else + typedef __int64 ptrdiff_t; +#endif +#else + typedef int ptrdiff_t; +#endif +#endif +#endif + +#ifndef _WCHAR_T_DEFINED +#define _WCHAR_T_DEFINED +#ifndef __cplusplus + typedef unsigned short wchar_t; +#endif +#endif + +#ifndef _WCTYPE_T_DEFINED +#define _WCTYPE_T_DEFINED + typedef unsigned short wint_t; + typedef unsigned short wctype_t; +#endif + +#ifndef _ERRCODE_DEFINED +#define _ERRCODE_DEFINED + typedef int errcode; + typedef int errno_t; +#endif + +#ifndef _TIME32_T_DEFINED +#define _TIME32_T_DEFINED + typedef long __time32_t; +#endif + +#ifndef _TIME64_T_DEFINED +#define _TIME64_T_DEFINED +#if _INTEGRAL_MAX_BITS >= 64 + typedef __int64 __time64_t; +#endif +#endif + +#ifndef _TIME_T_DEFINED +#define _TIME_T_DEFINED +#ifdef _USE_32BIT_TIME_T + typedef __time32_t time_t; +#else + typedef __time64_t time_t; +#endif +#endif + + struct threadlocaleinfostruct; + typedef struct threadlocaleinfostruct *pthreadlocinfo; + + struct threadmbcinfostruct; + typedef struct threadmbcinfostruct *pthreadmbcinfo; + + struct __lc_time_data; + + typedef struct localeinfo_struct { + pthreadlocinfo locinfo; + pthreadmbcinfo mbcinfo; + } _locale_tstruct,*_locale_t; + +#ifndef _TAGLC_ID_DEFINED +#define _TAGLC_ID_DEFINED + typedef struct tagLC_ID { + unsigned short wLanguage; + unsigned short wCountry; + unsigned short wCodePage; + } LC_ID,*LPLC_ID; +#endif + +#ifndef _THREADLOCALEINFO +#define _THREADLOCALEINFO + typedef struct threadlocaleinfostruct { + int refcount; + unsigned int lc_codepage; + unsigned int lc_collate_cp; + unsigned long lc_handle[6]; + LC_ID lc_id[6]; + struct { + char *locale; + wchar_t *wlocale; + int *refcount; + int *wrefcount; + } lc_category[6]; + int lc_clike; + int mb_cur_max; + int *lconv_intl_refcount; + int *lconv_num_refcount; + int *lconv_mon_refcount; + struct lconv *lconv; + int *ctype1_refcount; + unsigned short *ctype1; + const unsigned short *pctype; + const unsigned char *pclmap; + const unsigned char *pcumap; + struct __lc_time_data *lc_time_curr; + } threadlocinfo; +#endif + + +#ifdef __cplusplus +} +#endif + +#pragma pack(pop) + +#endif /* !_INC_CRTDEFS */
Modified: trunk/reactos/include/crt/time.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/time.h?rev=3826... ============================================================================== --- trunk/reactos/include/crt/time.h [iso-8859-1] (original) +++ trunk/reactos/include/crt/time.h [iso-8859-1] Sun Dec 21 23:55:21 2008 @@ -121,10 +121,10 @@
#define CLOCKS_PER_SEC 1000
- __MINGW_IMPORT int _daylight; - __MINGW_IMPORT long _dstbias; - __MINGW_IMPORT long _timezone; - __MINGW_IMPORT char * _tzname[2]; + _CRTDATA(extern int _daylight); + _CRTDATA(extern long _dstbias); + _CRTDATA(extern long _timezone); + _CRTDATA(extern char * _tzname[2]);
_CRTIMP errno_t __cdecl _get_daylight(int *_Daylight); _CRTIMP errno_t __cdecl _get_dstbias(long *_Daylight_savings_bias);