summaryrefslogtreecommitdiff
path: root/ace/Basic_Types.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Basic_Types.h')
-rw-r--r--ace/Basic_Types.h134
1 files changed, 54 insertions, 80 deletions
diff --git a/ace/Basic_Types.h b/ace/Basic_Types.h
index abde82d342c..cf08f81b4a0 100644
--- a/ace/Basic_Types.h
+++ b/ace/Basic_Types.h
@@ -14,7 +14,6 @@
*
* Sizes of built-in types:
* - ACE_SIZEOF_CHAR
- * - ACE_SIZEOF_WCHAR
* - ACE_SIZEOF_SHORT
* - ACE_SIZEOF_INT
* - ACE_SIZEOF_LONG
@@ -33,7 +32,7 @@
* - ACE_INT32
* - ACE_UINT32
* - ACE_UINT64
- * (@note ACE_INT64 is partly defined, there is no ACE_LongLong for
+ * (Note: ACE_INT64 is partly defined, there is no ACE_LongLong for
* platforms that don't have a native 8-byte integer type.)
*
* Byte-order (endian-ness) determination:
@@ -83,23 +82,6 @@
// A char always has 1 byte, by definition.
# define ACE_SIZEOF_CHAR 1
-// Unfortunately, there isn't a portable way to determine the size of a wchar.
-// So we just define them on a platform basis. If the platform doesn't
-// define it and it's an XPG4 system, assume wchar_t is 4 bytes. Some code
-// uses ACE_SIZEOF_WCHAR in preprocessor statements, so sizeof() isn't valid.
-// If the platform config doesn't set this, and this guess is wrong,
-// Basic_Types_Test should catch the inconsistency.
-# if defined (ACE_HAS_WCHAR)
-# if !defined (ACE_SIZEOF_WCHAR)
-# if defined (ACE_HAS_XPG4_MULTIBYTE_CHAR)
-# define ACE_SIZEOF_WCHAR 4
-# else
-// 0 so the Basic_Types test will catch this.
-# define ACE_SIZEOF_WCHAR 0
-# endif /* ACE_HAS_XPG4_MULTIBYTE_CHAR */
-# endif /* !ACE_SIZEOF_WCHAR */
-# endif /* ACE_HAS_WCHAR */
-
// The number of bytes in a short.
# if !defined (ACE_SIZEOF_SHORT)
# if (USHRT_MAX) == 255U
@@ -169,99 +151,97 @@
# endif /* !defined (ACE_SIZEOF_LONG_LONG) */
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
// The sizes of the commonly implemented types are now known. Set up
// typedefs for whatever we can. Some of these are needed for certain
// cases of ACE_UINT64, so do them before the 64-bit stuff.
#if defined (ACE_INT8_TYPE)
- typedef ACE_INT8_TYPE ACE_INT8;
+ typedef ACE_INT8_TYPE ACE_INT8;
#elif defined (ACE_HAS_INT8_T)
- typedef int8_t ACE_INT8;
+ typedef int8_t ACE_INT8;
#elif !defined (ACE_LACKS_SIGNED_CHAR)
- typedef signed char ACE_INT8;
+ typedef signed char ACE_INT8;
#else
- typedef char ACE_INT8;
+ typedef char ACE_INT8;
#endif /* defined (ACE_INT8_TYPE) */
#if defined (ACE_UINT8_TYPE)
- typedef ACE_UINT8_TYPE ACE_UINT8;
+ typedef ACE_UINT8_TYPE ACE_UINT8;
#elif defined (ACE_HAS_UINT8_T)
- typedef uint8_t ACE_UINT8;
+ typedef uint8_t ACE_UINT8;
#else
- typedef unsigned char ACE_UINT8;
+ typedef unsigned char ACE_UINT8;
#endif /* defined (ACE_UINT8_TYPE) */
#if defined (ACE_INT16_TYPE)
- typedef ACE_INT16_TYPE ACE_INT16;
+ typedef ACE_INT16_TYPE ACE_INT16;
#elif defined (ACE_HAS_INT16_T)
- typedef int16_t ACE_INT16;
+ typedef int16_t ACE_INT16;
#elif ACE_SIZEOF_SHORT == 2
- typedef short ACE_INT16;
+ typedef short ACE_INT16;
#elif ACE_SIZEOF_INT == 2
- typedef int ACE_INT16;
+ typedef int ACE_INT16;
#else
# error Have to add to the ACE_INT16 type setting
#endif /* defined (ACE_INT16_TYPE) */
#if defined (ACE_UINT16_TYPE)
- typedef ACE_UINT16_TYPE ACE_UINT16;
+ typedef ACE_UINT16_TYPE ACE_UINT16;
#elif defined (ACE_HAS_UINT16_T)
- typedef uint16_t ACE_UINT16;
+ typedef uint16_t ACE_UINT16;
#elif ACE_SIZEOF_SHORT == 2
- typedef unsigned short ACE_UINT16;
+ typedef unsigned short ACE_UINT16;
#elif ACE_SIZEOF_INT == 2
- typedef unsigned int ACE_UINT16;
+ typedef unsigned int ACE_UINT16;
#else
# error Have to add to the ACE_UINT16 type setting
#endif /* defined (ACE_UINT16_TYPE) */
#if defined (ACE_INT32_TYPE)
- typedef ACE_INT32_TYPE ACE_INT32;
+ typedef ACE_INT32_TYPE ACE_INT32;
#elif defined (ACE_HAS_INT32_T)
- typedef int32_t ACE_INT32;
+ typedef int32_t ACE_INT32;
#elif ACE_SIZEOF_INT == 4
- typedef int ACE_INT32;
+ typedef int ACE_INT32;
#elif ACE_SIZEOF_LONG == 4
- typedef long ACE_INT32;
+ typedef long ACE_INT32;
#else
# error Have to add to the ACE_INT32 type setting
#endif /* defined (ACE_INT32_TYPE) */
#if defined (ACE_UINT32_TYPE)
- typedef ACE_UINT32_TYPE ACE_UINT32;
+ typedef ACE_UINT32_TYPE ACE_UINT32;
#elif defined (ACE_HAS_UINT32_T)
- typedef uint32_t ACE_UINT32;
+ typedef uint32_t ACE_UINT32;
#elif ACE_SIZEOF_INT == 4
- typedef unsigned int ACE_UINT32;
+ typedef unsigned int ACE_UINT32;
#elif ACE_SIZEOF_LONG == 4
- typedef unsigned long ACE_UINT32;
+ typedef unsigned long ACE_UINT32;
#else
# error Have to add to the ACE_UINT32 type setting
#endif /* defined (ACE_UINT32_TYPE) */
#if defined (ACE_INT64_TYPE)
- typedef ACE_INT64_TYPE ACE_INT64;
+ typedef ACE_INT64_TYPE ACE_INT64;
#elif defined (ACE_HAS_INT64_T)
- typedef int64_t ACE_INT64;
+ typedef int64_t ACE_INT64;
#elif ACE_SIZEOF_LONG == 8
- typedef long ACE_INT64;
+ typedef long ACE_INT64;
#elif !defined (ACE_LACKS_LONGLONG_T) && ACE_SIZEOF_LONG_LONG == 8
- typedef long long ACE_INT64;
+ typedef long long ACE_INT64;
#endif /* defined (ACE_INT64_TYPE) */
#if !(defined (ACE_LACKS_LONGLONG_T) || defined (ACE_LACKS_UNSIGNEDLONGLONG_T))
/* See matching #if around ACE_U_LongLong class declaration below */
# if defined (ACE_UINT64_TYPE)
- typedef ACE_UINT64_TYPE ACE_UINT64;
+ typedef ACE_UINT64_TYPE ACE_UINT64;
# elif defined (ACE_HAS_UINT64_T)
- typedef uint64_t ACE_UINT64;
+ typedef uint64_t ACE_UINT64;
# elif ACE_SIZEOF_LONG == 8
- typedef unsigned long ACE_UINT64;
+ typedef unsigned long ACE_UINT64;
# elif ACE_SIZEOF_LONG_LONG == 8
- typedef unsigned long long ACE_UINT64;
+ typedef unsigned long long ACE_UINT64;
# endif /* defined (ACE_UINT64_TYPE) */
#endif /* !(ACE_LACKS_LONGLONG_T || ACE_LACKS_UNSIGNEDLONGLONG_T) */
@@ -271,17 +251,6 @@ typedef ACE_UINT16 ACE_USHORT16; // @@ Backward compatibility.
// Define a generic byte for use in codecs
typedef unsigned char ACE_Byte;
-// Define a pseudo wide character type when wchar is not supported so we
-// can support basic wide character string operations.
-
-# if defined (ACE_HAS_WCHAR) || defined (ACE_HAS_XPG4_MULTIBYTE_CHAR)
-# define ACE_WINT_T wint_t
-# define ACE_WCHAR_T wchar_t
-# else
-# define ACE_WINT_T ACE_UINT16
-# define ACE_WCHAR_T ACE_UINT16
-# endif /* ACE_HAS_WCHAR */
-
// The number of bytes in a void *.
# ifndef ACE_SIZEOF_VOID_P
# define ACE_SIZEOF_VOID_P ACE_SIZEOF_LONG
@@ -290,11 +259,14 @@ typedef unsigned char ACE_Byte;
// Type for doing arithmetic on pointers ... as elsewhere, we assume
// that unsigned versions of a type are the same size as the signed
// version of the same type.
+// NOTE! ptr_arith_t is an ACE-defined type and should not be used.
+// It has been superseded by the standard type ptrdiff_t. This definition
+// is simply a placeholder til all ptr_arith_t usage can be expunged from
+// ACE and TAO.
# if defined (ACE_HAS_WINCE) && (_WIN32_WCE < 400)
-typedef unsigned long ptrdiff_t; // evc3, PocketPC don't defined ptrdiff_t
+typedef unsigned long ptrdiff_t; // evc3, PocketPC don't defined ptrdiff_t
# endif
-
-ACE_END_VERSIONED_NAMESPACE_DECL
+typedef ptrdiff_t ptr_arith_t;
// Byte-order (endian-ness) determination.
# if defined (BYTE_ORDER)
@@ -386,8 +358,6 @@ ACE_END_VERSIONED_NAMESPACE_DECL
// Forward declaration for streams
# include "ace/iosfwd.h"
-ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-
/**
* @class ACE_U_LongLong
*
@@ -537,7 +507,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
double for_alignment_;
};
- // @note the following four accessors are inlined here in
+ // NOTE: the following four accessors are inlined here in
// order to minimize the extent of the data_ struct. It's
// only used here; the .i and .cpp files use the accessors.
@@ -553,7 +523,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
/// Internal utility function to hide access through struct.
ACE_UINT32 &l_ () { return data_.lo_; }
- // @note the above four accessors are inlined here in
+ // NOTE: the above four accessors are inlined here in
// order to minimize the extent of the data_ struct. It's
// only used here; the .i and .cpp files use the accessors.
@@ -579,8 +549,6 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
ostream &operator<< (ostream &, const ACE_U_LongLong &);
#endif /* ! ACE_LACKS_IOSTREAM_TOTALLY */
-ACE_END_VERSIONED_NAMESPACE_DECL
-
# endif /* ACE_LACKS_LONGLONG_T */
// Conversions from ACE_UINT64 to ACE_UINT32. ACE_CU64_TO_CU32 should
@@ -684,27 +652,34 @@ ACE_END_VERSIONED_NAMESPACE_DECL
#if !defined (ACE_UINT64_FORMAT_SPECIFIER)
# if defined (PRIu64)
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%") ACE_LIB_TEXT (PRIu64)
+# define ACE_UINT64_FORMAT_SPECIFIER_A "%" PRIu64
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_UINT64_FORMAT_SPECIFIER_A)
# elif ACE_SIZEOF_LONG == 8
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%lu")
+# define ACE_UINT64_FORMAT_SPECIFIER_A "%lu"
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_UINT64_FORMAT_SPECIFIER_A)
# else
-# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%llu")
+# define ACE_UINT64_FORMAT_SPECIFIER_A "%llu"
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_UINT64_FORMAT_SPECIFIER_A)
# endif /* defined (PRIu64) */
#endif /* ACE_UINT64_FORMAT_SPECIFIER */
#if !defined (ACE_SSIZE_T_FORMAT_SPECIFIER)
# if defined (ACE_WIN64)
-# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64d")
+# define ACE_SSIZE_T_FORMAT_SPECIFIER_A "%I64d"
+# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_SSIZE_T_FORMAT_SPECIFIER_A)
# else
-# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%d")
+# define ACE_SSIZE_T_FORMAT_SPECIFIER_A "%d"
+# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_SSIZE_T_FORMAT_SPECIFIER_A)
# endif /* ACE_WIN64 */
#endif /* ACE_SSIZE_T_FORMAT_SPECIFIER */
#if !defined (ACE_SIZE_T_FORMAT_SPECIFIER)
# if defined (ACE_WIN64)
-# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64u")
+# define ACE_SIZE_T_FORMAT_SPECIFIER_A "%I64u"
+# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_SIZE_T_FORMAT_SPECIFIER_A)
# else
-# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%u")
+# define ACE_SIZE_T_FORMAT_SPECIFIER_A "%u"
+# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT (ACE_SIZE_T_FORMAT_SPECIFIER_A)
# endif /* ACE_WIN64 */
#endif /* ACE_SIZE_T_FORMAT_SPECIFIER */
@@ -772,7 +747,6 @@ ACE_END_VERSIONED_NAMESPACE_DECL
#define ACE_INT16_MAX 0x7FFF
#define ACE_INT16_MIN -(ACE_INT16_MAX)-1
#define ACE_UINT16_MAX 0xFFFF
-#define ACE_WCHAR_MAX ACE_UINT16_MAX
#define ACE_INT32_MAX 0x7FFFFFFF
#define ACE_INT32_MIN -(ACE_INT32_MAX)-1
#define ACE_UINT32_MAX 0xFFFFFFFF