Codemesh Runtime v3 C++ API Reference  3.9.205
xmog-config-sunos-gcc.h
1 //
2 // Copyright (c) 1999-2020 by Codemesh, Inc.. ALL RIGHTS RESERVED.
3 //
4 
5 // included for proxy constant values
6 #include <limits>
7 
8 
9 #define XMOG_CPP_CODE "gcc"
10 
11 
12 // default value for wchar_t legality
13 #ifndef XMOG_SUPPORTS_WCHAR_T
14 # define XMOG_SUPPORTS_WCHAR_T 1
15 # define XMOG_WCHAR wchar_t
16 #endif
17 
18 
19 // default value for whether an 'unsigned short*' overload for 'wchar_t' needs to be declared
20 #ifndef XMOG_REQUIRES_UNSIGNED_SHORT_OVERLOAD
21 # define XMOG_REQUIRES_UNSIGNED_SHORT_OVERLOAD 0
22 #endif
23 
24 
25 #define XMOG_INLINE __inline
26 #define XMOG_MUTABLE mutable
27 #define XMOG_EXPLICIT explicit
28 
29 
30 // several versions of the g++ compiler don't handle this->SUPERTYPE::METHOD() correctly
31 // the way to invoke a super type's implementation is without the 'this->'
32 #define XMOG_BROKEN_SUPER_THIS 1
33 
34 
35 // default the flag that governs whether <typeinfo> is present
36 #ifndef XMOG_SUPPORTS_TYPEINFO
37 # if (__GNUC__>3) || ((__GNUC__==3) && (__GNUC_MINOR__==4))
38 # define XMOG_SUPPORTS_TYPEINFO 0
39 # else
40 # define XMOG_SUPPORTS_TYPEINFO 1
41 # endif
42 #endif
43 
44 
45 #ifndef XMOG_SUPPORTS_USING
46 # define XMOG_SUPPORTS_USING 1
47 #endif
48 
49 // we build the .NET support only into the MSVC runtime because
50 // we don't need to support any other compilers there (it's not
51 // publicly used)
52 #ifndef XMOG_SUPPORTS_DOTNET
53 # define XMOG_SUPPORTS_DOTNET 0
54 #endif
55 
56 // support for proxy constants
57 #ifndef XMOG_NAN
58 # define XMOG_NAN(x) ::std::numeric_limits< x >::quiet_NaN();
59 #endif
60 
61 #ifndef XMOG_NEG_INF
62 # define XMOG_NEG_INF(x) -::std::numeric_limits< x >::infinity();
63 #endif
64 
65 #ifndef XMOG_POS_INF
66 # define XMOG_POS_INF(x) ::std::numeric_limits< x >::infinity();
67 #endif
68 

Copyright (c) 1999-2020 by Codemesh, Inc., ALL RIGHTS RESERVED.