Author: jgardou Date: Wed Nov 10 22:20:05 2010 New Revision: 49552
URL: http://svn.reactos.org/svn/reactos?rev=49552&view=rev Log: [HEADERS] - start using our own c++ headers and forward stlport ones to them in msvc build. - fix fpecode declaration for MSVC. [CMAKE] - cardlib is a cpp library. Now stlport compiles with msvc.
Added: branches/cmake-bringup/include/c++/ (with props) branches/cmake-bringup/include/c++/cfloat (with props) branches/cmake-bringup/include/c++/climits (with props) branches/cmake-bringup/include/c++/clocale (with props) branches/cmake-bringup/include/c++/cmath (with props) branches/cmake-bringup/include/c++/cstddef (with props) branches/cmake-bringup/include/c++/cstdio (with props) branches/cmake-bringup/include/c++/cstdlib (with props) branches/cmake-bringup/include/c++/cstring (with props) branches/cmake-bringup/include/c++/ctime (with props) branches/cmake-bringup/include/c++/cwchar (with props) branches/cmake-bringup/include/c++/exception (with props) branches/cmake-bringup/include/c++/new (with props) branches/cmake-bringup/include/c++/typeinfo (with props) Modified: branches/cmake-bringup/CMakeMacros.cmake branches/cmake-bringup/include/crt/float.h branches/cmake-bringup/include/stlport/stl/_cstdlib.h branches/cmake-bringup/include/stlport/stl/config/user_config.h branches/cmake-bringup/lib/3rdparty/cardlib/CMakeLists.txt
Modified: branches/cmake-bringup/CMakeMacros.cmake URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/CMakeMacros.cmake?... ============================================================================== --- branches/cmake-bringup/CMakeMacros.cmake [iso-8859-1] (original) +++ branches/cmake-bringup/CMakeMacros.cmake [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -123,6 +123,13 @@ macro(set_cpp) include_directories(BEFORE ${REACTOS_SOURCE_DIR}/include/stlport) set(IS_CPP 1) + add_definitions( + -D_STLP_NATIVE_CPP_C_INCLUDE_PATH=../c++ + -D_STLP_NATIVE_C_INCLUDE_PATH=../crt + -D_STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH=../c++ + -D_STLP_USE_NEW_C_HEADERS + -D_STLP_NO_TYPEINFO + ) endmacro()
MACRO(add_livecd_target _targetname _dir )# optional parameter : _nameoncd
Propchange: branches/cmake-bringup/include/c++/ ------------------------------------------------------------------------------ --- bugtraq:logregex (added) +++ bugtraq:logregex Wed Nov 10 22:20:05 2010 @@ -1,0 +1,2 @@ +([Ii]ssue|[Bb]ug)s? #?(\d+)(,? ?#?(\d+))*(,? ?(and |or )?#?(\d+))? +(\d+)
Propchange: branches/cmake-bringup/include/c++/ ------------------------------------------------------------------------------ bugtraq:message = See issue #%BUGID% for more details.
Propchange: branches/cmake-bringup/include/c++/ ------------------------------------------------------------------------------ bugtraq:url = http://www.reactos.org/bugzilla/show_bug.cgi?id=%BUGID%
Propchange: branches/cmake-bringup/include/c++/ ------------------------------------------------------------------------------ tsvn:logminsize = 10
Added: branches/cmake-bringup/include/c++/cfloat URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cf... ============================================================================== --- branches/cmake-bringup/include/c++/cfloat (added) +++ branches/cmake-bringup/include/c++/cfloat [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,9 @@ +// C++ forwarding C float header. + +// +// ISO C++ 14882: 18.2.2 Implementation properties: C library +// + +#pragma once + +#include <float.h>
Propchange: branches/cmake-bringup/include/c++/cfloat ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/climits URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cl... ============================================================================== --- branches/cmake-bringup/include/c++/climits (added) +++ branches/cmake-bringup/include/c++/climits [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,17 @@ +// C limitations + +#pragma once + +#include <limits.h> + +#ifndef LLONG_MIN +#define LLONG_MIN (-__LONG_LONG_MAX__ - 1) +#endif + +#ifndef LLONG_MAX +#define LLONG_MAX __LONG_LONG_MAX__ +#endif + +#ifndef ULLONG_MAX +#define ULLONG_MAX (__LONG_LONG_MAX__ * 2ULL + 1) +#endif
Propchange: branches/cmake-bringup/include/c++/climits ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/clocale URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cl... ============================================================================== --- branches/cmake-bringup/include/c++/clocale (added) +++ branches/cmake-bringup/include/c++/clocale [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,16 @@ +// C++ forwarding C locale header. + +#pragma once + +#include <locale.h> + +// Get rid of those macros defined in <locale.h> in lieu of real functions. +#undef setlocale +#undef localeconv + +namespace std +{ + using ::lconv; + using ::setlocale; + using ::localeconv; +}
Propchange: branches/cmake-bringup/include/c++/clocale ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/cmath URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cm... ============================================================================== --- branches/cmake-bringup/include/c++/cmath (added) +++ branches/cmake-bringup/include/c++/cmath [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,292 @@ +//Standard C++ math declarations + +#pragma once + +#include <math.h> + +// Get rid of those macros defined in <math.h> in lieu of real functions. +#undef abs +#undef div +#undef acos +#undef asin +#undef atan +#undef atan2 +#undef ceil +#undef cos +#undef cosh +#undef exp +#undef fabs +#undef floor +#undef fmod +#undef frexp +#undef ldexp +#undef log +#undef log10 +#undef modf +#undef pow +#undef sin +#undef sinh +#undef sqrt +#undef tan +#undef tanh + +namespace std +{ + // Forward declaration of a helper function. This really should be + // an `exported' forward declaration. + template<typename _Tp> + _Tp __cmath_power(_Tp, unsigned int); + + template<typename _Tp> + inline _Tp + __pow_helper(_Tp __x, int __n) + { + return __n < 0 + ? _Tp(1)/__cmath_power(__x, -__n) + : __cmath_power(__x, __n); + } + + inline double + abs(double __x) + { return fabs(__x); } + + inline float + abs(float __x) + { return fabsf(__x); } + + inline long double + abs(long double __x) + { return fabsl(__x); } + + using ::acos; + + inline float + acos(float __x) + { return acosf(__x); } + + inline long double + acos(long double __x) + { return acosl(__x); } + + using ::asin; + + inline float + asin(float __x) + { return asinf(__x); } + + inline long double + asin(long double __x) + { return asinl(__x); } + + using ::atan; + + inline float + atan(float __x) + { return atanf(__x); } + + inline long double + atan(long double __x) + { return atanl(__x); } + + using ::atan2; + + inline float + atan2(float __y, float __x) + { return atan2f(__y, __x); } + + inline long double + atan2(long double __y, long double __x) + { return atan2l(__y, __x); } + + using ::ceil; + + inline float + ceil(float __x) + { return ceilf(__x); } + + inline long double + ceil(long double __x) + { return ceill(__x); } + + using ::cos; + + inline float + cos(float __x) + { return cosf(__x); } + + inline long double + cos(long double __x) + { return cosl(__x); } + + using ::cosh; + + inline float + cosh(float __x) + { return coshf(__x); } + + inline long double + cosh(long double __x) + { return coshl(__x); } + + using ::exp; + + inline float + exp(float __x) + { return expf(__x); } + + inline long double + exp(long double __x) + { return expl(__x); } + + using ::fabs; + + inline float + fabs(float __x) + { return fabsf(__x); } + + inline long double + fabs(long double __x) + { return fabsl(__x); } + + using ::floor; + + inline float + floor(float __x) + { return floorf(__x); } + + inline long double + floor(long double __x) + { return floorl(__x); } + + using ::fmod; + + inline float + fmod(float __x, float __y) + { return fmodf(__x, __y); } + + inline long double + fmod(long double __x, long double __y) + { return fmodl(__x, __y); } + + using ::frexp; + + inline float + frexp(float __x, int* __exp) + { return frexpf(__x, __exp); } + + inline long double + frexp(long double __x, int* __exp) + { return frexpl(__x, __exp); } + + using ::ldexp; + + inline float + ldexp(float __x, int __exp) + { return ldexpf(__x, __exp); } + + inline long double + ldexp(long double __x, int __exp) + { return ldexpl(__x, __exp); } + + using ::log; + + inline float + log(float __x) + { return logf(__x); } + + inline long double + log(long double __x) + { return logl(__x); } + + using ::log10; + + inline float + log10(float __x) + { return log10f(__x); } + + inline long double + log10(long double __x) + { return log10l(__x); } + + using ::modf; + + inline float + modf(float __x, float* __iptr) + { return modff(__x, __iptr); } + + inline long double + modf(long double __x, long double* __iptr) + { return modfl(__x, __iptr); } + + using ::pow; + + inline float + pow(float __x, float __y) + { return powf(__x, __y); } + + inline long double + pow(long double __x, long double __y) + { return powl(__x, __y); } + + inline double + pow(double __x, int __i) + { return pow(__x, static_cast<double>(__i)); } + + inline float + pow(float __x, int __n) + { return powf(__x, static_cast<float>(__n)); } + + inline long double + pow(long double __x, int __n) + { return powl(__x, static_cast<long double>(__n)); } + + using ::sin; + + inline float + sin(float __x) + { return sinf(__x); } + + inline long double + sin(long double __x) + { return sinl(__x); } + + using ::sinh; + + inline float + sinh(float __x) + { return sinhf(__x); } + + inline long double + sinh(long double __x) + { return sinhl(__x); } + + using ::sqrt; + + inline float + sqrt(float __x) + { return sqrtf(__x); } + + inline long double + sqrt(long double __x) + { return sqrtl(__x); } + + using ::tan; + + inline float + tan(float __x) + { return tanf(__x); } + + inline long double + tan(long double __x) + { return tanl(__x); } + + using ::tanh; + + inline float + tanh(float __x) + { return tanhf(__x); } + + inline long double + tanh(long double __x) + { return tanhl(__x); } +}
Propchange: branches/cmake-bringup/include/c++/cmath ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/cstddef URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cs... ============================================================================== --- branches/cmake-bringup/include/c++/cstddef (added) +++ branches/cmake-bringup/include/c++/cstddef [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,11 @@ +// ISO C++ standards definitions + +#include <stddef.h> + +#pragma once + +namespace std +{ + using ::ptrdiff_t; + using ::size_t; +}
Propchange: branches/cmake-bringup/include/c++/cstddef ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/cstdio URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cs... ============================================================================== --- branches/cmake-bringup/include/c++/cstdio (added) +++ branches/cmake-bringup/include/c++/cstdio [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,97 @@ +// C++ forwarding C stdio header. + +#pragma once + +#include <cstddef> +#include <stdio.h> + +// Get rid of those macros defined in <stdio.h> in lieu of real functions. +#undef clearerr +#undef fclose +#undef feof +#undef ferror +#undef fflush +#undef fgetc +#undef fgetpos +#undef fgets +#undef fopen +#undef fprintf +#undef fputc +#undef fputs +#undef fread +#undef freopen +#undef fscanf +#undef fseek +#undef fsetpos +#undef ftell +#undef fwrite +#undef getc +#undef getchar +#undef gets +#undef perror +#undef printf +#undef putc +#undef putchar +#undef puts +#undef remove +#undef rename +#undef rewind +#undef scanf +#undef setbuf +#undef setvbuf +#undef sprintf +#undef sscanf +#undef tmpfile +#undef tmpnam +#undef ungetc +#undef vfprintf +#undef vprintf +#undef vsprintf + +namespace std +{ + using ::FILE; + using ::fpos_t; + + using ::clearerr; + using ::fclose; + using ::feof; + using ::ferror; + using ::fflush; + using ::fgetc; + using ::fgetpos; + using ::fgets; + using ::fopen; + using ::fprintf; + using ::fputc; + using ::fputs; + using ::fread; + using ::freopen; + using ::fscanf; + using ::fseek; + using ::fsetpos; + using ::ftell; + using ::fwrite; + using ::getc; + using ::getchar; + using ::gets; + using ::perror; + using ::printf; + using ::putc; + using ::putchar; + using ::puts; + using ::remove; + using ::rename; + using ::rewind; + using ::scanf; + using ::setbuf; + using ::setvbuf; + using ::sprintf; + using ::sscanf; + using ::tmpfile; + using ::tmpnam; + using ::ungetc; + using ::vfprintf; + using ::vprintf; + using ::vsprintf; +}
Propchange: branches/cmake-bringup/include/c++/cstdio ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/cstdlib URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cs... ============================================================================== --- branches/cmake-bringup/include/c++/cstdlib (added) +++ branches/cmake-bringup/include/c++/cstdlib [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,77 @@ +// Standard C library declarations + +#pragma once + +#include <cstddef> +#include <stdlib.h> + +// Get rid of those macros defined in <stdlib.h> in lieu of real functions. +#undef abort +#undef abs +#undef atexit +#undef atof +#undef atoi +#undef atol +#undef bsearch +#undef calloc +#undef div +#undef exit +#undef free +#undef getenv +#undef labs +#undef ldiv +#undef malloc +#undef mblen +#undef mbstowcs +#undef mbtowc +#undef qsort +#undef rand +#undef realloc +#undef srand +#undef strtod +#undef strtol +#undef strtoul +#undef system +#undef wcstombs +#undef wctomb + +namespace std +{ + using ::div_t; + using ::ldiv_t; + + using ::abort; + using ::abs; + using ::atexit; + using ::atof; + using ::atoi; + using ::atol; + using ::bsearch; + using ::calloc; + using ::div; + using ::exit; + using ::free; + using ::getenv; + using ::labs; + using ::ldiv; + using ::malloc; + using ::mblen; + using ::mbstowcs; + using ::mbtowc; + using ::qsort; + using ::rand; + using ::realloc; + using ::srand; + using ::strtod; + using ::strtol; + using ::strtoul; + using ::system; + using ::wcstombs; + using ::wctomb; + + inline long + abs(long __i) { return labs(__i); } + + inline ldiv_t + div(long __i, long __j) { return ldiv(__i, __j); } +}
Propchange: branches/cmake-bringup/include/c++/cstdlib ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/cstring URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cs... ============================================================================== --- branches/cmake-bringup/include/c++/cstring (added) +++ branches/cmake-bringup/include/c++/cstring [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,60 @@ +// Standard C string declarations for C++ + +// +// ISO C++ 14882: 20.4.6 C library +// + +#pragma once + +#include <cstddef> +#include <string.h> + +// Get rid of those macros defined in <string.h> in lieu of real functions. +#undef memchr +#undef memcmp +#undef memcpy +#undef memmove +#undef memset +#undef strcat +#undef strchr +#undef strcmp +#undef strcoll +#undef strcpy +#undef strcspn +#undef strerror +#undef strlen +#undef strncat +#undef strncmp +#undef strncpy +#undef strpbrk +#undef strrchr +#undef strspn +#undef strstr +#undef strtok +#undef strxfrm + +namespace std +{ + using ::memchr; + using ::memcmp; + using ::memcpy; + using ::memmove; + using ::memset; + using ::strcat; + using ::strcmp; + using ::strcoll; + using ::strcpy; + using ::strcspn; + using ::strerror; + using ::strlen; + using ::strncat; + using ::strncmp; + using ::strncpy; + using ::strspn; + using ::strtok; + using ::strxfrm; + using ::strchr; + using ::strpbrk; + using ::strrchr; + using ::strstr; +}
Propchange: branches/cmake-bringup/include/c++/cstring ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/ctime URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/ct... ============================================================================== --- branches/cmake-bringup/include/c++/ctime (added) +++ branches/cmake-bringup/include/c++/ctime [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,34 @@ +// ISO C++ date and time declarations + +#include <cstddef> +#include <time.h> + +#pragma once + +// Get rid of those macros defined in <time.h> in lieu of real functions. +#undef clock +#undef difftime +#undef mktime +#undef time +#undef asctime +#undef ctime +#undef gmtime +#undef localtime +#undef strftime + +namespace std +{ + using ::clock_t; + using ::time_t; + using ::tm; + + using ::clock; + using ::difftime; + using ::mktime; + using ::time; + using ::asctime; + using ::ctime; + using ::gmtime; + using ::localtime; + using ::strftime; +}
Propchange: branches/cmake-bringup/include/c++/ctime ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/cwchar URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/cw... ============================================================================== --- branches/cmake-bringup/include/c++/cwchar (added) +++ branches/cmake-bringup/include/c++/cwchar [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,152 @@ +// C++ wchar forwarding header + +#pragma once + +#include <cstddef> + +#include <wchar.h> + +namespace std +{ + using ::mbstate_t; +} + +// Get rid of those macros defined in <wchar.h> in lieu of real functions. +#undef btowc +#undef fgetwc +#undef fgetws +#undef fputwc +#undef fputws +#undef fwide +#undef fwprintf +#undef fwscanf +#undef getwc +#undef getwchar +#undef mbrlen +#undef mbrtowc +#undef mbsinit +#undef mbsrtowcs +#undef putwc +#undef putwchar +#undef swprintf +#undef swscanf +#undef ungetwc +#undef vfwprintf +#undef vfwscanf +#undef vswprintf +#undef vswscanf +#undef vwprintf +#undef vwscanf +#undef wcrtomb +#undef wcscat +#undef wcschr +#undef wcscmp +#undef wcscoll +#undef wcscpy +#undef wcscspn +#undef wcsftime +#undef wcslen +#undef wcsncat +#undef wcsncmp +#undef wcsncpy +#undef wcspbrk +#undef wcsrchr +#undef wcsrtombs +#undef wcsspn +#undef wcsstr +#undef wcstod +#undef wcstof +#undef wcstok +#undef wcstol +#undef wcstoul +#undef wcsxfrm +#undef wctob +#undef wmemchr +#undef wmemcmp +#undef wmemcpy +#undef wmemmove +#undef wmemset +#undef wprintf +#undef wscanf + +namespace std +{ + using ::wint_t; + + using ::btowc; + using ::fgetwc; + using ::fgetws; + using ::fputwc; + using ::fputws; + using ::fwide; + using ::fwprintf; + using ::fwscanf; + using ::getwc; + using ::getwchar; + using ::mbrlen; + using ::mbrtowc; + using ::mbsinit; + using ::mbsrtowcs; + using ::putwc; + using ::putwchar; + using ::swprintf; + using ::swscanf; + using ::ungetwc; + using ::vfwprintf; + using ::vfwscanf; + using ::vswprintf; + using ::vswscanf; + using ::vwprintf; + using ::vwscanf; + using ::wcrtomb; + using ::wcscat; + using ::wcscmp; + using ::wcscoll; + using ::wcscpy; + using ::wcscspn; + using ::wcsftime; + using ::wcslen; + using ::wcsncat; + using ::wcsncmp; + using ::wcsncpy; + using ::wcsrtombs; + using ::wcsspn; + using ::wcstod; + using ::wcstof; + using ::wcstok; + using ::wcstol; + using ::wcstoul; + using ::wcsxfrm; + using ::wctob; + using ::wmemcmp; + using ::wmemcpy; + using ::wmemmove; + using ::wmemset; + using ::wprintf; + using ::wscanf; + using ::wcschr; + using ::wcspbrk; + using ::wcsrchr; + using ::wcsstr; + using ::wmemchr; + + inline wchar_t* + wcschr(wchar_t* __p, wchar_t __c) + { return wcschr(const_cast<const wchar_t*>(__p), __c); } + + inline wchar_t* + wcspbrk(wchar_t* __s1, const wchar_t* __s2) + { return wcspbrk(const_cast<const wchar_t*>(__s1), __s2); } + + inline wchar_t* + wcsrchr(wchar_t* __p, wchar_t __c) + { return wcsrchr(const_cast<const wchar_t*>(__p), __c); } + + inline wchar_t* + wcsstr(wchar_t* __s1, const wchar_t* __s2) + { return wcsstr(const_cast<const wchar_t*>(__s1), __s2); } + + inline wchar_t* + wmemchr(wchar_t* __p, wchar_t __c, size_t __n) + { return wmemchr(const_cast<const wchar_t*>(__p), __c, __n); } +}
Propchange: branches/cmake-bringup/include/c++/cwchar ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/exception URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/ex... ============================================================================== --- branches/cmake-bringup/include/c++/exception (added) +++ branches/cmake-bringup/include/c++/exception [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,66 @@ +// Exception Handling support header for -*- C++ -*- + +#ifndef __EXCEPTION__ +#define __EXCEPTION__ + +extern "C++" { + +namespace std +{ + /** + * @defgroup exceptions Exceptions + * @ingroup diagnostics + * + * Classes and functions for reporting errors via exception classes. + * @{ + */ + + /** + * @brief Base class for all library exceptions. + * + * This is the base class for all exceptions thrown by the standard + * library, and by certain language expressions. You are free to derive + * your own %exception classes, or use a different hierarchy, or to + * throw non-class data (e.g., fundamental types). + */ + class exception + { + public: + exception() throw() { } + virtual ~exception() throw(); + + /** Returns a C-style character string describing the general cause + * of the current error. */ + virtual const char* what() const throw(); + }; + + /** If an %exception is thrown which is not listed in a function's + * %exception specification, one of these may be thrown. */ + class bad_exception : public exception + { + public: + bad_exception() throw() { } + + virtual ~bad_exception() throw(); + + virtual const char* what() const throw(); + }; + + typedef void (*unexpected_handler) (); + + unexpected_handler set_unexpected(unexpected_handler) throw(); + + DECLSPEC_NORETURN void unexpected(); + + bool uncaught_exception() throw(); + + // @} group exceptions +} // namespace std + +typedef void (*terminate_handler) (); +terminate_handler set_terminate(terminate_handler) throw(); +DECLSPEC_NORETURN void terminate() throw(); + +} // extern "C++" + +#endif
Propchange: branches/cmake-bringup/include/c++/exception ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/new URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/ne... ============================================================================== --- branches/cmake-bringup/include/c++/new (added) +++ branches/cmake-bringup/include/c++/new [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,51 @@ +// Standard C++ dynamic memory management header + +#ifndef _NEW +#define _NEW + +#include <cstddef> +#include <exception> + +extern "C++" { + +namespace std +{ + class bad_alloc : public exception + { + public: + bad_alloc() throw() { } + + // This declaration is not useless: + // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118 + virtual ~bad_alloc() throw(); + + // See comment in eh_exception.cc. + virtual const char* what() const throw(); + }; + + struct nothrow_t { }; + + extern const nothrow_t nothrow; +} // namespace std + +typedef void (*new_handler)(); + +new_handler set_new_handler(new_handler) throw(); + +void* operator new (std::size_t size) throw (std::bad_alloc); +void* operator new (std::size_t size, const std::nothrow_t& nothrow_constant) throw(); +void* operator new (std::size_t size, void* ptr) throw(); +void* operator new[] (std::size_t size) throw (std::bad_alloc); +void* operator new[] (std::size_t size, const std::nothrow_t& nothrow_constant) throw(); +void* operator new[] (std::size_t size, void* ptr) throw(); + +void operator delete (void* ptr) throw (); +void operator delete (void* ptr, const std::nothrow_t& nothrow_constant) throw(); +void operator delete (void* ptr, void* voidptr2) throw(); +void operator delete[] (void* ptr) throw (); +void operator delete[] (void* ptr, const std::nothrow_t& nothrow_constant) throw(); +void operator delete[] (void* ptr, void* voidptr2) throw(); +//@} +} // extern "C++" + +#endif
Propchange: branches/cmake-bringup/include/c++/new ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/cmake-bringup/include/c++/typeinfo URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/c%2B%2B/ty... ============================================================================== --- branches/cmake-bringup/include/c++/typeinfo (added) +++ branches/cmake-bringup/include/c++/typeinfo [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,0 +1,48 @@ +// RTTI support for C++ + +#ifndef _TYPEINFO +#define _TYPEINFO + +#include <exception> + +extern "C++" { + +namespace std +{ + + class type_info { + public: + virtual ~type_info(); + bool before (const type_info& rhs) const; + { return __name < __arg.__name; } + bool operator==(const type_info& __arg) const + { return __name == __arg.__name; } + bool operator!=(const type_info& __arg) const + { return !operator==(__arg); } + const char* name() const; + protected: + const char* __name; + private: + type_info (const type_info& rhs); + type_info& operator= (const type_info& rhs); + }; + + class bad_cast : public exception + { + public: + bad_cast() throw() { } + virtual ~bad_cast() throw(); + virtual const char* what() const throw(); + }; + + class bad_typeid : public exception + { + public: + bad_typeid () throw() { } + virtual ~bad_typeid() throw(); + virtual const char* what() const throw(); + }; +} // namespace std + +} // extern "C++" +#endif
Propchange: branches/cmake-bringup/include/c++/typeinfo ------------------------------------------------------------------------------ svn:eol-style = native
Modified: branches/cmake-bringup/include/crt/float.h URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/crt/float.... ============================================================================== --- branches/cmake-bringup/include/crt/float.h [iso-8859-1] (original) +++ branches/cmake-bringup/include/crt/float.h [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -127,7 +127,7 @@ void __cdecl __MINGW_NOTHROW fpreset (void);
/* Global 'variable' for the current floating point error code. */ -_CRTIMP int * __cdecl __MINGW_NOTHROW __fpecode(void); +__MINGW_NOTHROW _CRTIMP int * __cdecl __fpecode(void); #define _fpecode (*(__fpecode()))
/*
Modified: branches/cmake-bringup/include/stlport/stl/_cstdlib.h URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/stlport/st... ============================================================================== --- branches/cmake-bringup/include/stlport/stl/_cstdlib.h [iso-8859-1] (original) +++ branches/cmake-bringup/include/stlport/stl/_cstdlib.h [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -154,8 +154,8 @@ inline _STLP_LONG_LONG abs(_STLP_LONG_LONG __x) { return ::llabs(__x); } inline lldiv_t div(_STLP_LONG_LONG __x, _STLP_LONG_LONG __y) { return ::lldiv(__x, __y); } # endif -# else -inline _STLP_LONG_LONG abs(_STLP_LONG_LONG __x) { return __x < 0 ? -__x : __x; } +/*# else +inline _STLP_LONG_LONG abs(_STLP_LONG_LONG __x) { return __x < 0 ? -__x : __x; }*/ # endif #endif
Modified: branches/cmake-bringup/include/stlport/stl/config/user_config.h URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/stlport/st... ============================================================================== --- branches/cmake-bringup/include/stlport/stl/config/user_config.h [iso-8859-1] (original) +++ branches/cmake-bringup/include/stlport/stl/config/user_config.h [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -202,9 +202,7 @@ * a Microsoft Visual Studio release. This change native C/C++ library location * and implementation, please define this to get correct STLport configuration. */ -/* #define _STLP_USING_PLATFORM_SDK_COMPILER 1 -*/
/* * Some compilers support the automatic linking feature.
Modified: branches/cmake-bringup/lib/3rdparty/cardlib/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/lib/3rdparty/cardl... ============================================================================== --- branches/cmake-bringup/lib/3rdparty/cardlib/CMakeLists.txt [iso-8859-1] (original) +++ branches/cmake-bringup/lib/3rdparty/cardlib/CMakeLists.txt [iso-8859-1] Wed Nov 10 22:20:05 2010 @@ -1,3 +1,5 @@ + +set_cpp()
list(APPEND SOURCE cardbitmaps.cpp