Codemesh Runtime v3 C++ API Reference  3.9.205
xmog-config-windows-mingw.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 #define XMOG_CPP_CODE "gcc"
9 
10 
11 // default value for wchar_t legality
12 #ifndef XMOG_SUPPORTS_WCHAR_T
13 # define XMOG_SUPPORTS_WCHAR_T 1
14 # define XMOG_WCHAR wchar_t
15 #endif
16 
17 
18 // default value for whether an 'unsigned short*' overload for 'wchar_t' needs to be declared
19 #ifndef XMOG_REQUIRES_UNSIGNED_SHORT_OVERLOAD
20 # define XMOG_REQUIRES_UNSIGNED_SHORT_OVERLOAD 0
21 #endif
22 
23 
24 #define XMOG_INLINE __inline
25 #define XMOG_MUTABLE mutable
26 #define XMOG_EXPLICIT explicit
27 
28 // several versions of the g++ compiler don't handle this->SUPERTYPE::METHOD() correctly
29 // the way to invoke a super type's implementation is without the 'this->'
30 #define XMOG_BROKEN_SUPER_THIS 1
31 
32 
33 // default the flag that governs whether <typeinfo> is present
34 #ifndef XMOG_SUPPORTS_TYPEINFO
35 # if (__GNUC__>3) || ((__GNUC__==3) && (__GNUC_MINOR__==4))
36 # define XMOG_SUPPORTS_TYPEINFO 0
37 # else
38 # define XMOG_SUPPORTS_TYPEINFO 1
39 # endif
40 #endif
41 
42 
43 #ifndef XMOG_SUPPORTS_USING
44 # define XMOG_SUPPORTS_USING 1
45 #endif
46 
47 // we build the .NET support only into the MSVC runtime because
48 // we don't need to support any other compilers there (it's not
49 // publicly used)
50 #ifndef XMOG_SUPPORTS_DOTNET
51 # define XMOG_SUPPORTS_DOTNET 0
52 #endif
53 
54 // we currently only build the CLR hosting support only into the MSVC
55 // runtime.
56 #if !defined(XMOG_SUPPORTS_CLR_HOSTING) && (XMOG_SUPPORTS_DOTNET==1)
57 # define XMOG_SUPPORTS_CLR_HOSTING 0
58 #endif
59 
60 #ifndef XMOG_DOTNET_EXPORT
61 # define XMOG_DOTNET_EXPORT __declspec(dllexport)
62 #endif
63 
64 #ifndef XMOG_DOTNET_CALL
65 # define XMOG_DOTNET_CALL __stdcall
66 #endif
67 
68 // support for proxy constants
69 #ifndef XMOG_NAN
70 # define XMOG_NAN(x) ::std::numeric_limits< x >::quiet_NaN();
71 #endif
72 
73 #ifndef XMOG_NEG_INF
74 # define XMOG_NEG_INF(x) -::std::numeric_limits< x >::infinity();
75 #endif
76 
77 #ifndef XMOG_POS_INF
78 # define XMOG_POS_INF(x) ::std::numeric_limits< x >::infinity();
79 #endif
80 
81 
82 

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