00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file os_stddef.h 00006 * 00007 * standard type definitions 00008 * 00009 * $Id: os_stddef.h 89759 2010-04-06 06:07:24Z johnnyw $ 00010 * 00011 * @author Don Hinton <dhinton@dresystems.com> 00012 * @author This code was originally in various places including ace/OS.h. 00013 */ 00014 //============================================================================= 00015 00016 // From http://www.UNIX-systems.org/single_unix_specification/ 00017 00018 #ifndef ACE_OS_INCLUDE_OS_STDDEF_H 00019 #define ACE_OS_INCLUDE_OS_STDDEF_H 00020 00021 #include /**/ "ace/pre.h" 00022 00023 #include "ace/config-lite.h" 00024 00025 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00026 # pragma once 00027 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00028 00029 #if !defined (ACE_LACKS_STDDEF_H) 00030 # include /**/ <stddef.h> 00031 #endif /* !ACE_LACKS_STDDEF_H */ 00032 00033 // Place all additions (especially function declarations) within extern "C" {} 00034 #ifdef __cplusplus 00035 extern "C" 00036 { 00037 #endif /* __cplusplus */ 00038 00039 // Signed integer type of the result of subtracting two pointers. 00040 #if defined (ACE_LACKS_PTRDIFF_T) 00041 # if !defined (ACE_PTRDIFF_T_TYPE) 00042 # define ACE_PTRDIFF_T_TYPE unsigned long 00043 # endif /* !ACE_PTRDIFF_T_TYPE */ 00044 typedef ACE_PTRDIFF_T_TYPE ptrdiff_t; 00045 #endif /* ACE_LACKS_PTRDIFF_T */ 00046 00047 /* 00048 Integer type whose range of values can represent distinct wide-character 00049 codes for all members of the largest character set specified among the 00050 locales supported by the compilation environment: the null character has 00051 the code value 0 and each member of the portable character set has a code 00052 value equal to its value when used as the lone character in an integer 00053 character constant. 00054 */ 00055 #if defined (ACE_LACKS_WCHAR_T) 00056 # if !defined (ACE_WCHAR_T_TYPE) 00057 # define ACE_WCHAR_T_TYPE long 00058 # endif /* !ACE_WCHAR_T_TYPE */ 00059 typedef ACE_WCHAR_T_TYPE wchar_t; 00060 #endif /* ACE_LACKS_WCHAR_T */ 00061 00062 // Unsigned integer type of the result of the sizeof operator. 00063 #if defined (ACE_LACKS_SIZE_T) 00064 # if !defined (ACE_SIZE_T_TYPE) 00065 # define ACE_SIZE_T_TYPE unsigned int 00066 # endif /* !ACE_SIZE_T_TYPE */ 00067 typedef ACE_SIZE_T_TYPE size_t; 00068 #endif /* ACE_LACKS_SIZE_T */ 00069 00070 #ifdef __cplusplus 00071 } 00072 #endif /* __cplusplus */ 00073 00074 #include /**/ "ace/post.h" 00075 #endif /* ACE_OS_INCLUDE_OS_STDDEF_H */