ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

_como.h
Go to the documentation of this file.
00001 
00002 // STLport configuration file
00003 // It is internal STLport header - DO NOT include it directly
00004 
00005 #define _STLP_COMPILER "Comeau"
00006 
00007 #include <stl/config/_native_headers.h>
00008 
00009 #define _STLP_UINT32_T unsigned int
00010 
00011 #define _STLP_HAS_NO_NEW_C_HEADERS
00012 // #define _STLP_VENDOR_GLOBAL_EXCEPT_STD
00013 #define _STLP_LONG_LONG long long
00014 
00015 
00016 //
00017 // ADDITIONS FOR COMEAU C++, made by Comeau Computing.
00018 // We can be reached through comeau@comeaucomputing.com
00019 // You shouldn't need to change anything below here for Comeau C++.
00020 // If you do, please tell us at comeau@comeaucomputing.com
00021 //
00022 // Changes made here, AND THROUGH ALL FILES, based upon the __COMO__ macro
00023 // (and SIMILAR NAMES INVOLVING COMO).... no doubt some of this will
00024 // change as SGI integrates the changes into their code base since
00025 // some changes are not really Comeau C++ specific, but required to
00026 // make the SGI code compliant with Standard C++).
00027 //
00028 // Testing was done with Comeau C++ 4.2.44 and 4.2.45.2.  Changes were made for
00029 // both Comeau relaxed mode and Comeau strict mode, especially for end user code
00030 // (that is, some of the .cxx files cannot compile in strict mode, because they
00031 // contain extensions to Standard C++, however their object code forms can
00032 // be used once compiled in relaxed mode, even if the end user code uses
00033 // strict mode).
00034 //
00035 // These changes may also work for some earlier versions of Comeau C++,
00036 // though we have not tested them.
00037 //
00038 // Actual mods made under RedHat 6.1 LINUX, should be ok with SuSE too and
00039 // other LINUX's, and older Caldera LINUX, Solaris/SPARC, SunOS, SCO UNIX,
00040 // and NetBSD. Other platforms may be added.  Comeau will also perform
00041 // custom ports for you.
00042 //
00043 // Check libcomo details at http://www.comeaucomputing.com/libcomo and
00044 // http://www.comeaucomputing.com
00045 //
00046 // History of Comeau changes (this is rough, as work was often going on in parallel):
00047 // BETA1 July 14, 2000, Initial port for RedHat 6.1 INTEL/ELF
00048 // BETA2 Aug   4, 2000, Stronger RedHat support
00049 //                      Support for Comeau strict mode for end user code
00050 // BETA3 Aug  22, 2000, Support for other LINUX/INTEL/ELF's, including older ones
00051 // BETA4 Sept  2, 2000, Initial support for SCO UNIX + other UNIX x86 SVR3's
00052 //                      Stronger support for end user Comeau strict mode
00053 // BETA5 Oct   5, 2000, Initial support for Solaris/SPARC
00054 //                      More SCO support (though still incomplete)
00055 // BETA6 Feb   5, 2001, Minor mods to accomodate Comeau C++ 4.2.45.1
00056 // BETA7 Mar  13, 2001, Verified with Comeau C++ 4.2.45.2
00057 //                      Minor NetBSD support
00058 // BETA8 Apr   1. 2001, Initial support for SunOS/SPARC
00059 // BETA9 Apr   7, 2001, Stronger SCO support + other UNIX x86 SVR3's
00060 //                      Mods for an fpos_t problem for some LINUXes
00061 //                      Mods since Destroy did not work in strict mode
00062 // BETA10 Apr  12. 2001, Stronger NetBSD support
00063 //
00064 // PLANNED:
00065 // BETAx TBA  TBA, 2001, NetBSD, UNIXWARE, and Windows support expected
00066 //
00067 
00068 
00069 #ifdef __linux__
00070 
00071 #   define _STLP_NO_NATIVE_MBSTATE_T      1
00072 #   define _STLP_NO_NATIVE_WIDE_FUNCTIONS 1
00073 #   define _STLP_NO_NATIVE_WIDE_STREAMS   1
00074 #   define _STLP_NO_LONG_DOUBLE   1
00075 
00076 // Comeau C++ under LINUX/INTEL/ELF
00077 // Preprocess away "long long" routines for now, even in relaxed mode
00078 # define __wcstoull_internal_defined  1
00079 # define __wcstoll_internal_defined  1
00080 
00081 #endif /* __COMO__ under __linux__ */
00082 
00083 #ifdef __USING_x86SVR3x_WITH_COMO /* SCO et al */
00084 /* UNIX 386+ SVR3 mods made with __USING_x86SVR3x_WITH_COMO
00085    in other sources, not here */
00086 #    define atan2l atan2
00087 #    define cosl cos
00088 #    define sinl sin
00089 #    define sqrtl sqrt
00090 #    include <math.h>
00091      inline long double expl(long double arg) { return exp(arg); }
00092      inline long double logl(long double arg) { return log(arg); }
00093 #    define log10l log10
00094 
00095 #    define sinhl sinh
00096 #    define coshl cosh
00097 #    define fabsl fabs
00098 namespace std {
00099  inline int min(int a, int b) { return a>b ? b : a; }
00100 }
00101 #endif
00102 
00103 #ifdef sun
00104 // Comeau C++ under Solaris/SPARC or SunOS
00105 
00106 #ifdef solarissparc
00107 #define __USING_SOLARIS_SPARC_WITH_COMO /* show this in the source when grep'ing for COMO */
00108 // Note comowchar.h for Solaris/SPARC wchar stuff
00109 
00110 #include <math.h>
00111 #    define sinf sin
00112 #    define sinl sin
00113 #    define sinhf sinh
00114 #    define sinhl sinh
00115 #    define cosf cos
00116 #    define cosl cos
00117 #    define coshf cosh
00118 #    define coshl cosh
00119 #    define atan2l atan2
00120 #    define atan2f atan2
00121      inline float logf(float arg) { return log(arg); }
00122      inline long double logl(long double arg) { return log(arg); }
00123 #    define log10f log10
00124 #    define log10l log10
00125 #    define expf exp
00126      inline long double expl(long double arg) { return exp(arg); }
00127 #    define sqrtf sqrt
00128 #    define sqrtl sqrt
00129 #    define fabsf fabs
00130 #    define fabsl fabs
00131 #else
00132 #define __USING_SUNOS_WITH_COMO
00133 
00134 #define __unix 1
00135 #define __EXTENSIONS__ /* This might create undue noise somewhere */
00136 #endif
00137 #endif /* sun */
00138 
00139 #if defined(__NetBSD__)
00140 // From non-como #ifdef __GNUC__ above
00141 #undef _STLP_NO_FUNCTION_PTR_IN_CLASS_TEMPLATE
00142 #define __unix 1
00143 
00144 #include <sys/cdefs.h>
00145 // Some joker #define'd __END_DECLS as };
00146 #undef __END_DECLS
00147 #define __END_DECLS }
00148 
00149 // <sys/stat.h> prob
00150 #include <sys/cdefs.h>
00151 #undef __RENAME
00152 #define __RENAME(x)
00153 
00154 #define wchar_t __COMO_WCHAR_T
00155 #include <stddef.h>
00156 #undef wchar_t
00157 
00158 #include <math.h>
00159 # ifdef BORIS_DISABLED
00160 #    define atan2l atan2
00161 #    define cosl cos
00162 #    define sinl sin
00163 #    define sqrtl sqrt
00164      inline long double expl(long double arg) { return exp(arg); }
00165      inline long double logl(long double arg) { return log(arg); }
00166 #    define log10l log10
00167 #    define sinhl sinh
00168 #    define coshl cosh
00169 #    define fabsl fabs
00170 # endif
00171 #endif /* __NetBSD__ under __COMO__ */
00172 
00173 // Shouldn't need to change anything below here for Comeau C++
00174 // If so, tell us at comeau@comeaucomputing.com
00175 
00176 #define _STLP_NO_DRAND48
00177 
00178 #define _STLP_PARTIAL_SPECIALIZATION_SYNTAX
00179 #define _STLP_NO_USING_CLAUSE_IN_CLASS
00180 
00181 #if __COMO_VERSION__ < 4300
00182 #if __COMO_VERSION__ >= 4245
00183 #define _STLP_NO_EXCEPTION_HEADER 
00184     // Is this needed?
00185 #   include <stdexcept.stdh>
00186 #endif
00187 #define _STLP_NO_BAD_ALLOC 
00188 #define _STLP_USE_AUTO_PTR_CONVERSIONS 
00189 #endif
00190 
00191 // this one is true only with MS
00192 # if defined (_MSC_VER)
00193 #  define _STLP_WCHAR_T_IS_USHORT 1
00194 #  if _MSC_VER <= 1200
00195 #   define _STLP_VENDOR_GLOBAL_CSTD
00196 #  endif
00197 #  if _MSC_VER < 1100
00198 #   define _STLP_NO_BAD_ALLOC 1
00199 #   define _STLP_NO_EXCEPTION_HEADER 1
00200 #   define _STLP_NO_NEW_NEW_HEADER 1
00201 #   define _STLP_USE_NO_IOSTREAMS 1
00202 #  endif
00203 # endif
00204 
00205 // # define __EDG_SWITCHES
00206 
00207 

Generated on Sun May 27 2012 04:29:47 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.