Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygencrtdefs.h
Go to the documentation of this file.
00001 00006 #include <_mingw.h> 00007 #include <specstrings.h> 00008 00009 #ifndef _INC_CRTDEFS 00010 #define _INC_CRTDEFS 00011 00012 #ifdef _USE_32BIT_TIME_T 00013 #ifdef _WIN64 00014 #error You cannot use 32-bit time_t (_USE_32BIT_TIME_T) with _WIN64 00015 #undef _USE_32BIT_TIME_T 00016 #endif 00017 #else 00018 #if _INTEGRAL_MAX_BITS < 64 00019 #define _USE_32BIT_TIME_T 00020 #endif 00021 #endif 00022 00023 /* Disable non-ANSI C definitions if compiling with __STDC__ */ 00024 //HACK: Disabled 00025 //#if __STDC__ 00026 //#define NO_OLDNAMES 00027 //#endif 00028 00029 00032 #undef _CRT_PACKING 00033 #define _CRT_PACKING 8 00034 #pragma pack(push,_CRT_PACKING) 00035 00036 #ifndef _CRT_STRINGIZE 00037 #define __CRT_STRINGIZE(_Value) #_Value 00038 #define _CRT_STRINGIZE(_Value) __CRT_STRINGIZE(_Value) 00039 #endif 00040 00041 #ifndef _CRT_WIDE 00042 #define __CRT_WIDE(_String) L ## _String 00043 #define _CRT_WIDE(_String) __CRT_WIDE(_String) 00044 #endif 00045 00046 #ifndef _W64 00047 #if !defined(_midl) && defined(_X86_) && _MSC_VER >= 1300 00048 #define _W64 __w64 00049 #else 00050 #define _W64 00051 #endif 00052 #endif 00053 00054 #ifndef _CRTIMP 00055 #ifdef CRTDLL /* Defined for ntdll, crtdll, msvcrt, etc */ 00056 #define _CRTIMP 00057 #elif defined(_DLL) 00058 #define _CRTIMP __declspec(dllimport) 00059 #else /* !CRTDLL && !_DLL */ 00060 #define _CRTIMP 00061 #endif /* CRTDLL || _DLL */ 00062 #endif /* !_CRTIMP */ 00063 00064 //#define _CRT_ALTERNATIVE_INLINES 00065 00066 #ifndef _CRTIMP_ALT 00067 #ifdef _DLL 00068 #ifdef _CRT_ALTERNATIVE_INLINES 00069 #define _CRTIMP_ALT 00070 #else 00071 #define _CRTIMP_ALT _CRTIMP 00072 #define _CRT_ALTERNATIVE_IMPORTED 00073 #endif 00074 #else 00075 #define _CRTIMP_ALT 00076 #endif 00077 #endif 00078 00079 #ifndef _CRTDATA 00080 #ifdef _M_CEE_PURE 00081 #define _CRTDATA(x) x 00082 #else 00083 #define _CRTDATA(x) _CRTIMP x 00084 #endif 00085 #endif 00086 00087 #ifndef _CRTIMP2 00088 #define _CRTIMP2 _CRTIMP 00089 #endif 00090 00091 #ifndef _CRTIMP_PURE 00092 #define _CRTIMP_PURE _CRTIMP 00093 #endif 00094 00095 #ifndef _CRTIMP_ALTERNATIVE 00096 #define _CRTIMP_ALTERNATIVE _CRTIMP 00097 #define _CRT_ALTERNATIVE_IMPORTED 00098 #endif 00099 00100 #ifndef _CRTIMP_NOIA64 00101 #ifdef __ia64__ 00102 #define _CRTIMP_NOIA64 00103 #else 00104 #define _CRTIMP_NOIA64 _CRTIMP 00105 #endif 00106 #endif 00107 00108 #ifndef _MRTIMP2 00109 #define _MRTIMP2 _CRTIMP 00110 #endif 00111 00112 #ifndef _MCRTIMP 00113 #define _MCRTIMP _CRTIMP 00114 #endif 00115 00116 #ifndef _PGLOBAL 00117 #define _PGLOBAL 00118 #endif 00119 00120 #ifndef _AGLOBAL 00121 #define _AGLOBAL 00122 #endif 00123 00124 #ifndef _CONST_RETURN 00125 #define _CONST_RETURN 00126 #endif 00127 00128 #ifndef UNALIGNED 00129 #if defined(__ia64__) || defined(__x86_64) 00130 #define UNALIGNED __unaligned 00131 #else 00132 #define UNALIGNED 00133 #endif 00134 #endif 00135 00136 #ifndef _CRT_ALIGN 00137 #if defined (__midl) || defined(__WIDL__) 00138 #define _CRT_ALIGN(x) 00139 #elif defined(_MSC_VER) 00140 #define _CRT_ALIGN(x) __declspec(align(x)) 00141 #else 00142 #define _CRT_ALIGN(x) __attribute__ ((aligned(x))) 00143 #endif 00144 #endif 00145 00146 #ifndef _CRTNOALIAS 00147 #define _CRTNOALIAS 00148 #endif 00149 00150 #ifndef _CRTRESTRICT 00151 #define _CRTRESTRICT 00152 #endif 00153 00154 #ifndef __CRTDECL 00155 #define __CRTDECL __cdecl 00156 #endif 00157 00158 #ifndef _CRT_UNUSED 00159 #define _CRT_UNUSED(x) (void)x 00160 #endif 00161 00162 #ifndef _CONST_RETURN 00163 #ifdef __cplusplus 00164 #define _CONST_RETURN const 00165 #define _CRT_CONST_CORRECT_OVERLOADS 00166 #else 00167 #define _CONST_RETURN 00168 #endif 00169 #endif 00170 00171 #define __crt_typefix(ctype) 00172 00173 00176 #ifdef __GNUC__ 00177 #define _CRT_DEPRECATE_TEXT(_Text) __attribute__ ((deprecated)) 00178 #elif defined(_MSC_VER) 00179 #define _CRT_DEPRECATE_TEXT(_Text) __declspec(deprecated(_Text)) 00180 #else 00181 #define _CRT_DEPRECATE_TEXT(_Text) 00182 #endif 00183 00184 #ifndef __STDC_WANT_SECURE_LIB__ 00185 #define __STDC_WANT_SECURE_LIB__ 1 00186 #endif 00187 00188 #ifndef _CRT_INSECURE_DEPRECATE 00189 # ifdef _CRT_SECURE_NO_DEPRECATE 00190 # define _CRT_INSECURE_DEPRECATE(_Replacement) 00191 # else 00192 # define _CRT_INSECURE_DEPRECATE(_Replacement) \ 00193 _CRT_DEPRECATE_TEXT("This may be unsafe, Try " #_Replacement " instead!") 00194 # endif 00195 #endif 00196 00197 #ifndef _CRT_INSECURE_DEPRECATE_CORE 00198 # ifdef _CRT_SECURE_NO_DEPRECATE_CORE 00199 # define _CRT_INSECURE_DEPRECATE_CORE(_Replacement) 00200 # else 00201 # define _CRT_INSECURE_DEPRECATE_CORE(_Replacement) \ 00202 _CRT_DEPRECATE_TEXT("This may be unsafe, Try " #_Replacement " instead! Enable _CRT_SECURE_NO_DEPRECATE to avoid thie warning.") 00203 # endif 00204 #endif 00205 00206 #ifndef _CRT_NONSTDC_DEPRECATE 00207 # ifdef _CRT_NONSTDC_NO_DEPRECATE 00208 # define _CRT_NONSTDC_DEPRECATE(_Replacement) 00209 # else 00210 # define _CRT_NONSTDC_DEPRECATE(_Replacement) \ 00211 _CRT_DEPRECATE_TEXT("Deprecated POSIX name, Try " #_Replacement " instead!") 00212 # endif 00213 #endif 00214 00215 #ifndef _CRT_INSECURE_DEPRECATE_MEMORY 00216 #define _CRT_INSECURE_DEPRECATE_MEMORY(_Replacement) 00217 #endif 00218 00219 #ifndef _CRT_INSECURE_DEPRECATE_GLOBALS 00220 #define _CRT_INSECURE_DEPRECATE_GLOBALS(_Replacement) 00221 #endif 00222 00223 #ifndef _CRT_MANAGED_HEAP_DEPRECATE 00224 #define _CRT_MANAGED_HEAP_DEPRECATE 00225 #endif 00226 00227 #ifndef _CRT_OBSOLETE 00228 #define _CRT_OBSOLETE(_NewItem) 00229 #endif 00230 00231 00234 #define _ARGMAX 100 00235 00236 #ifndef _TRUNCATE 00237 #define _TRUNCATE ((size_t)-1) 00238 #endif 00239 00240 #define __STDC_SECURE_LIB__ 200411L 00241 #define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__ 00242 #define _SECURECRT_FILL_BUFFER_PATTERN 0xFD 00243 00244 00247 #ifdef __cplusplus 00248 extern "C" { 00249 #endif 00250 00251 #ifndef _SIZE_T_DEFINED 00252 #define _SIZE_T_DEFINED 00253 #undef size_t 00254 #ifdef _WIN64 00255 #if defined(__GNUC__) && defined(__STRICT_ANSI__) 00256 typedef unsigned int size_t __attribute__ ((mode (DI))); 00257 #else 00258 __MINGW_EXTENSION typedef unsigned __int64 size_t; 00259 #endif 00260 #else 00261 typedef unsigned int size_t; 00262 #endif 00263 #endif 00264 00265 #ifndef _INTPTR_T_DEFINED 00266 #define _INTPTR_T_DEFINED 00267 #ifndef __intptr_t_defined 00268 #define __intptr_t_defined 00269 #undef intptr_t 00270 #ifdef _WIN64 00271 #if defined(__GNUC__) && defined(__STRICT_ANSI__) 00272 typedef int intptr_t __attribute__ ((mode (DI))); 00273 #else 00274 __MINGW_EXTENSION typedef __int64 intptr_t; 00275 #endif 00276 #else 00277 typedef int intptr_t; 00278 #endif 00279 #endif 00280 #endif 00281 00282 #ifndef _UINTPTR_T_DEFINED 00283 #define _UINTPTR_T_DEFINED 00284 #ifndef __uintptr_t_defined 00285 #define __uintptr_t_defined 00286 #undef uintptr_t 00287 #ifdef _WIN64 00288 #if defined(__GNUC__) && defined(__STRICT_ANSI__) 00289 typedef unsigned int uintptr_t __attribute__ ((mode (DI))); 00290 #else 00291 __MINGW_EXTENSION typedef unsigned __int64 uintptr_t; 00292 #endif 00293 #else 00294 typedef unsigned int uintptr_t; 00295 #endif 00296 #endif 00297 #endif 00298 00299 #ifndef _PTRDIFF_T_DEFINED 00300 #define _PTRDIFF_T_DEFINED 00301 #ifndef _PTRDIFF_T_ 00302 #undef ptrdiff_t 00303 #ifdef _WIN64 00304 #if defined(__GNUC__) && defined(__STRICT_ANSI__) 00305 typedef int ptrdiff_t __attribute__ ((mode (DI))); 00306 #else 00307 __MINGW_EXTENSION typedef __int64 ptrdiff_t; 00308 #endif 00309 #else 00310 typedef int ptrdiff_t; 00311 #endif 00312 #endif 00313 #endif 00314 00315 #ifndef _WCHAR_T_DEFINED 00316 #define _WCHAR_T_DEFINED 00317 #ifndef __cplusplus 00318 typedef unsigned short wchar_t; 00319 #endif 00320 #endif 00321 00322 #ifndef _WCTYPE_T_DEFINED 00323 #define _WCTYPE_T_DEFINED 00324 typedef unsigned short wint_t; 00325 typedef unsigned short wctype_t; 00326 #endif 00327 00328 #ifndef _ERRCODE_DEFINED 00329 #define _ERRCODE_DEFINED 00330 typedef int errcode; 00331 typedef int errno_t; 00332 #endif 00333 00334 #ifndef _TIME32_T_DEFINED 00335 #define _TIME32_T_DEFINED 00336 typedef long __time32_t; 00337 #endif 00338 00339 #ifndef _TIME64_T_DEFINED 00340 #define _TIME64_T_DEFINED 00341 #if _INTEGRAL_MAX_BITS >= 64 00342 __MINGW_EXTENSION typedef __int64 __time64_t; 00343 #endif 00344 #endif 00345 00346 #ifndef _TIME_T_DEFINED 00347 #define _TIME_T_DEFINED 00348 #ifdef _USE_32BIT_TIME_T 00349 typedef __time32_t time_t; 00350 #else 00351 typedef __time64_t time_t; 00352 #endif 00353 #endif 00354 00355 typedef struct threadmbcinfostruct { 00356 int refcount; 00357 int mbcodepage; 00358 int ismbcodepage; 00359 int mblcid; 00360 unsigned short mbulinfo[6]; 00361 char mbctype[257]; 00362 char mbcasemap[256]; 00363 } threadmbcinfo, *pthreadmbcinfo; 00364 00365 00366 #ifndef _TAGLC_ID_DEFINED 00367 #define _TAGLC_ID_DEFINED 00368 typedef struct tagLC_ID { 00369 unsigned short wLanguage; 00370 unsigned short wCountry; 00371 unsigned short wCodePage; 00372 } LC_ID,*LPLC_ID; 00373 #endif 00374 00375 #ifndef _THREADLOCALEINFO 00376 #define _THREADLOCALEINFO 00377 typedef struct threadlocaleinfostruct { 00378 int refcount; 00379 unsigned int lc_codepage; 00380 unsigned int lc_collate_cp; 00381 unsigned long lc_handle[6]; 00382 LC_ID lc_id[6]; 00383 struct { 00384 char *locale; 00385 wchar_t *wlocale; 00386 int *refcount; 00387 int *wrefcount; 00388 } lc_category[6]; 00389 int lc_clike; 00390 int mb_cur_max; 00391 int *lconv_intl_refcount; 00392 int *lconv_num_refcount; 00393 int *lconv_mon_refcount; 00394 struct lconv *lconv; 00395 int *ctype1_refcount; 00396 unsigned short *ctype1; 00397 const unsigned short *pctype; 00398 const unsigned char *pclmap; 00399 const unsigned char *pcumap; 00400 struct __lc_time_data *lc_time_curr; 00401 } threadlocinfo, *pthreadlocinfo; 00402 #endif 00403 00404 struct __lc_time_data; 00405 00406 typedef struct localeinfo_struct { 00407 pthreadlocinfo locinfo; 00408 pthreadmbcinfo mbcinfo; 00409 }_locale_tstruct,*_locale_t; 00410 00411 #ifdef __cplusplus 00412 } 00413 #endif 00414 00415 #pragma pack(pop) 00416 00417 #endif /* !_INC_CRTDEFS */ Generated on Sat May 26 2012 04:28:26 for ReactOS by
1.7.6.1
|