Index: trunk/i386/modules/uClibcxx/include/iostream =================================================================== --- trunk/i386/modules/uClibcxx/include/iostream (revision 2087) +++ trunk/i386/modules/uClibcxx/include/iostream (revision 2088) @@ -29,10 +29,6 @@ #include #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ #ifdef __UCLIBCXX_SUPPORT_CIN__ extern istream cin; @@ -98,8 +94,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/cstdarg =================================================================== --- trunk/i386/modules/uClibcxx/include/cstdarg (revision 2087) +++ trunk/i386/modules/uClibcxx/include/cstdarg (revision 2088) @@ -43,8 +43,6 @@ #ifndef _CPP_CSTDARG #define _CPP_CSTDARG 1 -#pragma GCC system_header - #include // Adhere to section 17.4.1.2 clause 5 of ISO 14882:1998 Index: trunk/i386/modules/uClibcxx/include/unwind-cxx.h =================================================================== --- trunk/i386/modules/uClibcxx/include/unwind-cxx.h (revision 2087) +++ trunk/i386/modules/uClibcxx/include/unwind-cxx.h (revision 2088) @@ -38,12 +38,8 @@ #include #include #include -#include "unwind.h" +//#include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace __cxxabiv1 { @@ -137,30 +133,6 @@ // The current installed user handlers. extern std::terminate_handler __terminate_handler; extern std::unexpected_handler __unexpected_handler; - -// These are explicitly GNU C++ specific. - -// This is the exception class we report -- "GNUCC++\0". -const _Unwind_Exception_Class __gxx_exception_class -= ((((((((_Unwind_Exception_Class) 'G' - << 8 | (_Unwind_Exception_Class) 'N') - << 8 | (_Unwind_Exception_Class) 'U') - << 8 | (_Unwind_Exception_Class) 'C') - << 8 | (_Unwind_Exception_Class) 'C') - << 8 | (_Unwind_Exception_Class) '+') - << 8 | (_Unwind_Exception_Class) '+') - << 8 | (_Unwind_Exception_Class) '\0'); - -// GNU C++ personality routine, Version 0. -extern "C" _Unwind_Reason_Code __gxx_personality_v0 - (int, _Unwind_Action, _Unwind_Exception_Class, - struct _Unwind_Exception *, struct _Unwind_Context *); - -// GNU C++ sjlj personality routine, Version 0. -extern "C" _Unwind_Reason_Code __gxx_personality_sj0 - (int, _Unwind_Action, _Unwind_Exception_Class, - struct _Unwind_Exception *, struct _Unwind_Context *); - #ifdef __UCLIBCXX_EXCEPTION_SUPPORT__ // Acquire the C++ exception header from the C++ object. @@ -179,8 +151,4 @@ #endif } /* namespace __cxxabiv1 */ -#ifdef __GCC__ -#pragma GCC visibility pop -#endif - #endif // _UNWIND_CXX_H Index: trunk/i386/modules/uClibcxx/include/iomanip =================================================================== --- trunk/i386/modules/uClibcxx/include/iomanip (revision 2087) +++ trunk/i386/modules/uClibcxx/include/iomanip (revision 2088) @@ -23,10 +23,6 @@ #ifndef __STD_IOMANIP #define __STD_IOMANIP 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ // These are the helper classes which we are going to be using to @@ -166,9 +162,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/numeric =================================================================== --- trunk/i386/modules/uClibcxx/include/numeric (revision 2087) +++ trunk/i386/modules/uClibcxx/include/numeric (revision 2088) @@ -23,10 +23,6 @@ #ifndef __STD_NUMERIC_HEADER #define __STD_NUMERIC_HEADER 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template _UCXXEXPORT T accumulate(InputIterator first, InputIterator last, T init) @@ -157,9 +153,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/utility =================================================================== --- trunk/i386/modules/uClibcxx/include/utility (revision 2087) +++ trunk/i386/modules/uClibcxx/include/utility (revision 2088) @@ -24,10 +24,6 @@ #ifndef __STD_HEADER_UTILITY #define __STD_HEADER_UTILITY 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ namespace rel_ops { @@ -85,8 +81,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop -#endif - #endif //__STD_HEADER_UTILITY Index: trunk/i386/modules/uClibcxx/include/type_traits =================================================================== --- trunk/i386/modules/uClibcxx/include/type_traits (revision 2087) +++ trunk/i386/modules/uClibcxx/include/type_traits (revision 2088) @@ -25,10 +25,6 @@ #ifndef __HEADER_TYPE_TRAITS #define __HEADER_TYPE_TRAITS 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ struct _UCXXEXPORT __true_type{}; @@ -88,9 +84,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/memory =================================================================== --- trunk/i386/modules/uClibcxx/include/memory (revision 2087) +++ trunk/i386/modules/uClibcxx/include/memory (revision 2088) @@ -27,10 +27,6 @@ #ifndef HEADER_STD_MEMORY #define HEADER_STD_MEMORY 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template class allocator; @@ -192,9 +188,5 @@ } //namespace std -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/cstddef =================================================================== --- trunk/i386/modules/uClibcxx/include/cstddef (revision 2087) +++ trunk/i386/modules/uClibcxx/include/cstddef (revision 2088) @@ -43,10 +43,6 @@ #ifndef _CPP_CSTDDEF #define _CPP_CSTDDEF 1 -#ifdef __GCC__ -#pragma GCC system_header -#endif - #include namespace std Index: trunk/i386/modules/uClibcxx/include/map =================================================================== --- trunk/i386/modules/uClibcxx/include/map (revision 2087) +++ trunk/i386/modules/uClibcxx/include/map (revision 2088) @@ -29,10 +29,6 @@ #ifndef __STD_HEADER_MAP #define __STD_HEADER_MAP -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ @@ -256,10 +252,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/iterator =================================================================== --- trunk/i386/modules/uClibcxx/include/iterator (revision 2087) +++ trunk/i386/modules/uClibcxx/include/iterator (revision 2088) @@ -28,10 +28,6 @@ #ifndef __STD_HEADER_ITERATOR #define __STD_HEADER_ITERATOR 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ // subclause _lib.stream.iterators_, stream iterators: @@ -166,7 +162,7 @@ } bool equal(const istreambuf_iterator& b) const{ - return sbuf == b.sbuf || is_eof() && b.is_eof(); + return sbuf == b.sbuf || (is_eof() && b.is_eof()); } private: streambuf_type* sbuf; @@ -224,10 +220,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/bitset =================================================================== --- trunk/i386/modules/uClibcxx/include/bitset (revision 2087) +++ trunk/i386/modules/uClibcxx/include/bitset (revision 2088) @@ -27,10 +27,6 @@ #ifndef __STD_BITSET_HEADER #define __STD_BITSET_HEADER 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template class bitset; @@ -419,9 +415,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/set =================================================================== --- trunk/i386/modules/uClibcxx/include/set (revision 2087) +++ trunk/i386/modules/uClibcxx/include/set (revision 2088) @@ -28,10 +28,6 @@ #ifndef __STD_HEADER_SET #define __STD_HEADER_SET -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ @@ -402,10 +398,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/iosfwd =================================================================== --- trunk/i386/modules/uClibcxx/include/iosfwd (revision 2087) +++ trunk/i386/modules/uClibcxx/include/iosfwd (revision 2088) @@ -25,13 +25,9 @@ #ifndef __HEADER_STD_IOSFWD #define __HEADER_STD_IOSFWD 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std { class ios_base; - template<> class char_traits; + template<> struct char_traits; #ifdef __UCLIBCXX_HAS_WCHAR__ template<> class char_traits; @@ -111,8 +107,4 @@ #endif } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/limits =================================================================== --- trunk/i386/modules/uClibcxx/include/limits (revision 2087) +++ trunk/i386/modules/uClibcxx/include/limits (revision 2088) @@ -23,10 +23,6 @@ //#warning limits header is nowhere complete or accurate -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ enum float_round_style{ @@ -612,8 +608,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/functional =================================================================== --- trunk/i386/modules/uClibcxx/include/functional (revision 2087) +++ trunk/i386/modules/uClibcxx/include/functional (revision 2088) @@ -21,10 +21,6 @@ #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template struct unary_function; @@ -48,9 +44,9 @@ template struct logical_or; template struct logical_not; - template struct unary_negate; + template class unary_negate; template unary_negate not1(const Predicate&); - template struct binary_negate; + template class binary_negate; template binary_negate not2(const Predicate&); @@ -433,11 +429,7 @@ return binary_compose(fn1, fn2, fn3); } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/istream =================================================================== --- trunk/i386/modules/uClibcxx/include/istream (revision 2087) +++ trunk/i386/modules/uClibcxx/include/istream (revision 2088) @@ -26,10 +26,6 @@ #ifndef __STD_HEADER_ISTREAM #define __STD_HEADER_ISTREAM 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ typedef basic_istream istream; @@ -100,15 +96,15 @@ basic_ios::mstreambuf->sbumpc(); if(c == traits::eof() ){ if(i==0){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); }else{ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } break; } if(c == delim){ if(i==0){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); } basic_ios::mstreambuf->sputbackc(c); break; @@ -132,16 +128,16 @@ c = basic_ios::mstreambuf->sgetc(); if(c == traits::eof()){ if(i==0){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); }else{ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } count_last_ufmt_input = i; return *this; } if(c == delim){ if(i==0){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); } count_last_ufmt_input = i; return *this; @@ -167,16 +163,16 @@ c = basic_ios::mstreambuf->sgetc(); if(c == traits::eof() ){ if( basic_ios::eof() ){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); }else{ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } count_last_ufmt_input = i; s[i] = traits::eos(); return *this; } if(basic_ios::mstreambuf->sbumpc()==traits::eof() ){ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } if(c == delim){ count_last_ufmt_input = i+1; @@ -196,7 +192,7 @@ for(i=0;i::mstreambuf->sgetc(); if(c == traits::eof()){ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); return *this; } basic_ios::mstreambuf->sbumpc(); @@ -213,7 +209,7 @@ }else{ int_type c = basic_ios::mstreambuf->sgetc(); if(c == traits::eof()){ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } return basic_ios::mstreambuf->sgetc(); } @@ -227,8 +223,8 @@ c = basic_ios::mstreambuf->sgetc(); if(c == traits::eof()){ - basic_ios::setstate(ios_base::failbit); - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::eofbit); count_last_ufmt_input = i; return *this; } @@ -243,13 +239,13 @@ sentry(*this, true); if(!basic_ios::good()){ count_last_ufmt_input = 0; - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); return 0; } if( basic_ios::mstreambuf->in_avail() == -1){ count_last_ufmt_input=0; - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); return 0; } @@ -272,15 +268,15 @@ _UCXXEXPORT basic_istream& putback(char_type c){ sentry(*this, true); if(!basic_ios::good()){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); return *this; } if(basic_ios::mstreambuf == 0){ - basic_ios::setstate(ios_base::badbit); + //basic_ios::setstate(ios_base::badbit); return *this; } if(basic_ios::mstreambuf->sputbackc(c) == traits::eof()){ - basic_ios::setstate(ios_base::badbit); + //basic_ios::setstate(ios_base::badbit); return *this; } return *this; @@ -289,15 +285,15 @@ _UCXXEXPORT basic_istream& unget(){ sentry(*this, true); if(!basic_ios::good()){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); return *this; } if(basic_ios::mstreambuf == 0){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); return *this; } if(basic_ios::mstreambuf->sungetc() == traits::eof()){ - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::failbit); } return *this; } @@ -308,7 +304,7 @@ return -1; } if(basic_ios::mstreambuf->pubsync() == -1){ - basic_ios::setstate(ios_base::badbit); + //basic_ios::setstate(ios_base::badbit); return traits::eof(); } return 0; @@ -342,7 +338,7 @@ }; - template > class _UCXXEXPORT basic_istream::sentry { + template */ > class _UCXXEXPORT basic_istream::sentry { bool ok; public: explicit _UCXXEXPORT sentry(basic_istream& os, bool noskipws = false){ @@ -374,7 +370,7 @@ int_type retval = basic_ios::mstreambuf->sgetc(); if(retval == traits::eof()){ count_last_ufmt_input = 0; - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); }else{ count_last_ufmt_input = 1; basic_ios::mstreambuf->sbumpc(); @@ -388,8 +384,8 @@ int_type retval = basic_ios::mstreambuf->sgetc(); if(retval == traits::eof()){ count_last_ufmt_input = 0; - basic_ios::setstate(ios_base::eofbit); - basic_ios::setstate(ios_base::failbit); + //basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::failbit); }else{ count_last_ufmt_input = 1; c = traits::to_char_type(retval); @@ -597,9 +593,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/stack =================================================================== --- trunk/i386/modules/uClibcxx/include/stack (revision 2087) +++ trunk/i386/modules/uClibcxx/include/stack (revision 2088) @@ -21,10 +21,6 @@ #ifndef __HEADER_STD_STACK #define __HEADER_STD_STACK 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template > class _UCXXEXPORT stack{ @@ -79,10 +75,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/string =================================================================== --- trunk/i386/modules/uClibcxx/include/string (revision 2087) +++ trunk/i386/modules/uClibcxx/include/string (revision 2088) @@ -33,10 +33,6 @@ #ifndef __HEADER_STD_STRING #define __HEADER_STD_STRING 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ //Basic basic_string @@ -428,7 +424,7 @@ } _UCXXEXPORT size_type find (Ch c, size_type pos = 0) const{ for(size_type i = pos; i < length(); ++i){ - if(operator[](i) == c){ + if(this->operator[](i) == c){ return i; } } @@ -458,7 +454,7 @@ _UCXXEXPORT size_type find_first_of(const basic_string& str, size_type pos = 0) const{ for(size_type i = pos; i < length(); ++i){ for(size_type j = 0; j < str.length() ; ++j){ - if( Tr::eq(str[j], operator[](i)) ){ + if( Tr::eq(str[j], this->operator[](i)) ){ return i; } } @@ -474,7 +470,7 @@ } _UCXXEXPORT size_type find_first_of(Ch c, size_type pos = 0) const{ for(size_type i = pos; i< length(); ++i){ - if( Tr::eq(operator[](i), c) ){ + if( Tr::eq(this->operator[](i), c) ){ return i; } } @@ -487,7 +483,7 @@ } for(size_type i = pos; i >0 ; --i){ for(size_type j = 0 ; j < str.length(); ++j){ - if( Tr::eq(operator[](i-1), str[j]) ){ + if( Tr::eq(this->operator[](i-1), str[j]) ){ return i-1; } } @@ -505,7 +501,7 @@ pos = length(); } for(size_type i = pos; i >0 ; --i){ - if( Tr::eq(operator[](i-1), c) ){ + if( Tr::eq(this->operator[](i-1), c) ){ return i-1; } } @@ -517,7 +513,7 @@ for(size_type i = pos; i < length(); ++i){ foundCharacter = false; for(size_type j = 0; j < str.length() ; ++j){ - if( Tr::eq(str[j], operator[](i)) ){ + if( Tr::eq(str[j], this->operator[](i)) ){ foundCharacter = true; } } @@ -536,7 +532,7 @@ } _UCXXEXPORT size_type find_first_not_of(Ch c, size_type pos = 0) const{ for(size_type i = pos; i < length() ; ++i){ - if(operator[](i) != c){ + if(this->operator[](i) != c){ return i; } } @@ -1019,11 +1015,11 @@ template <> _UCXXEXPORT bool operator==(const string & lhs, const string & rhs); template <> _UCXXEXPORT bool operator==(const char * lhs, const string & rhs); -template <> _UCXXEXPORT bool operator==(const string & rhs, const char * rhs); +template <> _UCXXEXPORT bool operator==(const string & lhs, const char * rhs); template <> _UCXXEXPORT bool operator!=(const string & lhs, const string & rhs); template <> _UCXXEXPORT bool operator!=(const char * lhs, const string & rhs); -template <> _UCXXEXPORT bool operator!=(const string & rhs, const char * rhs); +template <> _UCXXEXPORT bool operator!=(const string & lhs, const char * rhs); template <> _UCXXEXPORT string operator+(const string & lhs, const char* rhs); template <> _UCXXEXPORT string operator+(const char* lhs, const string & rhs); @@ -1039,8 +1035,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/ostream =================================================================== --- trunk/i386/modules/uClibcxx/include/ostream (revision 2087) +++ trunk/i386/modules/uClibcxx/include/ostream (revision 2088) @@ -27,10 +27,6 @@ #include #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std { template class basic_ostream; typedef basic_ostream ostream; @@ -93,7 +89,7 @@ basic_ios::mstreambuf->sputc(c), basic_ostream::traits_type::eof())) { - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } return *this; } @@ -102,13 +98,13 @@ basic_ios::mstreambuf->sputn(s, n), basic_ostream::traits_type::eof()) ){ - basic_ios::setstate(ios_base::eofbit); + //basic_ios::setstate(ios_base::eofbit); } return *this; } _UCXXEXPORT basic_ostream& flush(){ if(basic_ios::mstreambuf->pubsync() == -1){ - basic_ios::setstate(ios_base::badbit); + //basic_ios::setstate(ios_base::badbit); } return *this; } @@ -233,7 +229,7 @@ { sentry s(*this); if(sb == 0){ - basic_ios::setstate(ios_base::badbit); + //basic_ios::setstate(ios_base::badbit); return *this; } @@ -277,7 +273,7 @@ #endif #endif - template > + template */ > class _UCXXEXPORT basic_ostream::sentry { bool ok; @@ -479,9 +475,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/sstream =================================================================== --- trunk/i386/modules/uClibcxx/include/sstream (revision 2087) +++ trunk/i386/modules/uClibcxx/include/sstream (revision 2088) @@ -29,8 +29,6 @@ #include #include -#pragma GCC visibility push(default) - namespace std{ template @@ -376,8 +374,6 @@ #endif #endif -#pragma GCC visibility pop - } Index: trunk/i386/modules/uClibcxx/include/csignal =================================================================== --- trunk/i386/modules/uClibcxx/include/csignal (revision 2087) +++ trunk/i386/modules/uClibcxx/include/csignal (revision 2088) @@ -44,8 +44,6 @@ #ifndef _CPP_CSIGNAL #define _CPP_CSIGNAL 1 -#pragma GCC system_header - #include // Get rid of those macros defined in in lieu of real functions. Index: trunk/i386/modules/uClibcxx/include/valarray =================================================================== --- trunk/i386/modules/uClibcxx/include/valarray (revision 2087) +++ trunk/i386/modules/uClibcxx/include/valarray (revision 2088) @@ -25,10 +25,6 @@ #include #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template class valarray; @@ -993,8 +989,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/iterator_base =================================================================== --- trunk/i386/modules/uClibcxx/include/iterator_base (revision 2087) +++ trunk/i386/modules/uClibcxx/include/iterator_base (revision 2088) @@ -22,10 +22,6 @@ #ifndef __STD_HEADER_ITERATOR_BASE #define __STD_HEADER_ITERATOR_BASE 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template struct iterator_traits; template struct iterator_traits; @@ -300,10 +296,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/algorithm =================================================================== --- trunk/i386/modules/uClibcxx/include/algorithm (revision 2087) +++ trunk/i386/modules/uClibcxx/include/algorithm (revision 2088) @@ -27,10 +27,6 @@ #undef min #undef max -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ // subclause _lib.alg.nonmodifying_, non-modifying sequence operations: @@ -1689,11 +1685,7 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/istream_helpers =================================================================== --- trunk/i386/modules/uClibcxx/include/istream_helpers (revision 2087) +++ trunk/i386/modules/uClibcxx/include/istream_helpers (revision 2088) @@ -25,10 +25,6 @@ #ifndef __STD_HEADER_ISTREAM_HELPERS #define __STD_HEADER_ISTREAM_HELPERS 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ @@ -58,8 +54,8 @@ break; } } - if (temp.size() == 0) - stream.setstate(ios_base::eofbit|ios_base::failbit); + //if (temp.size() == 0) + //stream.setstate(ios_base::eofbit|ios_base::failbit); return temp; } @@ -78,8 +74,8 @@ break; } } - if (temp.size() == 0) - stream.setstate(ios_base::eofbit|ios_base::failbit); + //if (temp.size() == 0) + //stream.setstate(ios_base::eofbit|ios_base::failbit); return temp; } @@ -333,16 +329,12 @@ is.rdbuf()->sbumpc(); } if(traits::eq_int_type(c, eof)){ - is.setstate(ios_base::eofbit); + //is.setstate(ios_base::eofbit); } } } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/ostream_helpers =================================================================== --- trunk/i386/modules/uClibcxx/include/ostream_helpers (revision 2087) +++ trunk/i386/modules/uClibcxx/include/ostream_helpers (revision 2088) @@ -21,15 +21,12 @@ #include #include #include +#include #include #ifndef __STD_HEADER_OSTREAM_HELPERS #define __STD_HEADER_OSTREAM_HELPERS 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ /* We are making the following template class for serveral reasons. Firstly, @@ -484,11 +481,7 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/locale =================================================================== --- trunk/i386/modules/uClibcxx/include/locale (revision 2087) +++ trunk/i386/modules/uClibcxx/include/locale (revision 2088) @@ -24,10 +24,6 @@ #ifndef __HEADER_STD_LOCALE #define __HEADER_STD_LOCALE 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ class _UCXXEXPORT locale { public: @@ -80,8 +76,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/vector =================================================================== --- trunk/i386/modules/uClibcxx/include/vector (revision 2087) +++ trunk/i386/modules/uClibcxx/include/vector (revision 2088) @@ -29,10 +29,6 @@ #ifndef __STD_HEADER_VECTOR #define __STD_HEADER_VECTOR -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template > class vector; @@ -513,9 +509,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/deque =================================================================== --- trunk/i386/modules/uClibcxx/include/deque (revision 2087) +++ trunk/i386/modules/uClibcxx/include/deque (revision 2088) @@ -21,10 +21,6 @@ #include #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - #ifndef __STD_HEADER_DEQUE #define __STD_HEADER_DEQUE @@ -804,12 +800,8 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/stdexcept =================================================================== --- trunk/i386/modules/uClibcxx/include/stdexcept (revision 2087) +++ trunk/i386/modules/uClibcxx/include/stdexcept (revision 2088) @@ -27,8 +27,6 @@ //Don't include support if not needed #ifdef __UCLIBCXX_EXCEPTION_SUPPORT__ -#pragma GCC visibility push(default) - namespace std{ //typedef basic_string string; @@ -111,7 +109,5 @@ } -#pragma GCC visibility pop - #endif #endif Index: trunk/i386/modules/uClibcxx/include/list =================================================================== --- trunk/i386/modules/uClibcxx/include/list (revision 2087) +++ trunk/i386/modules/uClibcxx/include/list (revision 2088) @@ -24,10 +24,6 @@ #ifndef __STD_HEADER_LIST #define __STD_HEADER_LIST 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template > class _UCXXEXPORT list { @@ -64,18 +60,7 @@ list(const list& x); ~list(); - list& operator=(const list& x){ - if(&x == this){ - return *this; - } - clear(); - iterator i = x.begin(); - while(i != x.end()){ - push_back(*i); - ++i; - } - return *this; - } + list& operator=(const list& x); template void assign(InputIterator first, InputIterator last); template void assign(Size n, const U& u = U()); @@ -549,6 +534,20 @@ } } + template list& list:: operator=(const list& x){ + if(&x == this){ + return *this; + } + clear(); + iterator i = x.begin(); + while(i != x.end()){ + push_back(*i); + ++i; + } + return *this; + } + + template void list::splice(iterator position, list& x) { @@ -922,10 +921,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/basic_definitions =================================================================== --- trunk/i386/modules/uClibcxx/include/basic_definitions (revision 2087) +++ trunk/i386/modules/uClibcxx/include/basic_definitions (revision 2088) @@ -20,10 +20,6 @@ #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - //The following is used to support GCC symbol visibility patch #ifdef GCC_HASCLASSVISIBILITY @@ -56,13 +52,9 @@ typedef signed long int streamsize; } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - #ifdef __DODEBUG__ #define UCLIBCXX_DEBUG 1 #else Index: trunk/i386/modules/uClibcxx/include/cwctype =================================================================== --- trunk/i386/modules/uClibcxx/include/cwctype (revision 2087) +++ trunk/i386/modules/uClibcxx/include/cwctype (revision 2088) @@ -44,8 +44,6 @@ #ifndef _CPP_CWCTYPE #define _CPP_CWCTYPE 1 -#pragma GCC system_header - //#include #ifdef __UCLIBCXX_HAS_WCHAR__ Index: trunk/i386/modules/uClibcxx/include/queue =================================================================== --- trunk/i386/modules/uClibcxx/include/queue (revision 2087) +++ trunk/i386/modules/uClibcxx/include/queue (revision 2088) @@ -23,10 +23,6 @@ #ifndef __HEADER_STD_QUEUE #define __HEADER_STD_QUEUE 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template > class _UCXXEXPORT queue{ @@ -121,10 +117,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/streambuf =================================================================== --- trunk/i386/modules/uClibcxx/include/streambuf (revision 2087) +++ trunk/i386/modules/uClibcxx/include/streambuf (revision 2088) @@ -27,10 +27,6 @@ #include -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ template class _UCXXEXPORT basic_streambuf{ @@ -326,8 +322,4 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif - -#endif Index: trunk/i386/modules/uClibcxx/include/new =================================================================== --- trunk/i386/modules/uClibcxx/include/new (revision 2087) +++ trunk/i386/modules/uClibcxx/include/new (revision 2088) @@ -24,10 +24,6 @@ #ifndef __STD_NEW_OPERATOR #define __STD_NEW_OPERATOR 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ class _UCXXEXPORT bad_alloc : public exception {}; @@ -60,9 +56,5 @@ inline void* operator new[](std::size_t, void *p) throw() { return p; } inline void operator delete[](void* , void *) throw() {} -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/ios =================================================================== --- trunk/i386/modules/uClibcxx/include/ios (revision 2087) +++ trunk/i386/modules/uClibcxx/include/ios (revision 2088) @@ -25,10 +25,6 @@ #ifndef __HEADER_STD_IOS #define __HEADER_STD_IOS 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ typedef signed long int streamoff; @@ -497,9 +493,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/fstream =================================================================== --- trunk/i386/modules/uClibcxx/include/fstream (revision 2087) +++ trunk/i386/modules/uClibcxx/include/fstream (revision 2088) @@ -39,8 +39,6 @@ #include #endif //__UCLIBCXX_HAS_WCHAR__ -#pragma GCC visibility push(default) - namespace std{ template class basic_filebuf; @@ -671,8 +669,6 @@ } -#pragma GCC visibility pop - #endif #endif \ No newline at end of file Index: trunk/i386/modules/uClibcxx/include/ctime =================================================================== --- trunk/i386/modules/uClibcxx/include/ctime (revision 2087) +++ trunk/i386/modules/uClibcxx/include/ctime (revision 2088) @@ -44,8 +44,6 @@ #ifndef _CPP_CTIME #define _CPP_CTIME 1 -#pragma GCC system_header - #include #include Index: trunk/i386/modules/uClibcxx/include/char_traits =================================================================== --- trunk/i386/modules/uClibcxx/include/char_traits (revision 2087) +++ trunk/i386/modules/uClibcxx/include/char_traits (revision 2088) @@ -21,10 +21,6 @@ #include #include -#ifdef __UCLIBCXX_HAS_WCHAR__ -#include -#include -#endif #ifndef __HEADER_CHAR_TRAITS #define __HEADER_CHAR_TRAITS 1 @@ -105,93 +101,11 @@ } } static state_type get_state(pos_type p){ - p = p; - state_type a; + //p = p; + state_type a = 0; return a; } }; - - -#ifdef __UCLIBCXX_HAS_WCHAR__ - template<> struct _UCXXEXPORT char_traits { - typedef wchar_t char_type; - typedef wint_t int_type; - typedef char_traits_off_type off_type; - typedef char_traits_off_type pos_type; - typedef mbstate_t state_type; - - static void assign(char_type & c, const char_type & d){ c=d; } - - static char_type to_char_type(const int_type & i){ - return i; - } - - static int_type to_int_type(const char_type & c){ - return c; - } - - inline static bool eq_int_type(const int_type & a, const int_type & b){ - if(a==b){ - return true; - } - return false; - } - - inline static bool eq(const char_type& c1, const char_type& c2){ - if(wcsncmp(&c1, &c2, 1) == 0){ - return true; - } - return false; - } - - inline static bool lt(const char_type& c1, const char_type& c2){ - if(wcsncmp(&c1, &c2, 1) < 0){ - return true; - } - return false; - } - - inline static char_type* move(char_type* s1, const char_type* s2, size_t n){ - return (char_type*) memmove(s1, s2, n * sizeof(char_type)); - } - - inline static char_type* copy(char_type* s1, const char_type* s2, size_t n){ - for(unsigned long int i=0; i< n; ++i){ - assign(s1[i], s2[i]); - } - return s1 + n; - } - - inline static char_type* assign(char_type* s, size_t n, char_type a){ - return (char_type *)memset(s, a, n); /*FIXME*/ - } - - inline static int compare(const char_type* s1, const char_type* s2, size_t n){ - return wcsncmp(s1, s2, n); - } - - inline static size_t length(const char_type* s){ - return wcslen(s); - } - - static const char_type* find(const char_type* s, int n, const char_type& a); - - inline static char_type eos() { return 0; } - inline static int_type eof() { return WEOF; } - inline static int_type not_eof(const int_type & i) { - if(i == WEOF){ - return (int_type)0; - } else { - return i; - } - } - static state_type get_state(pos_type){ - state_type a; - return a; - } - }; -#endif - } #endif Index: trunk/i386/modules/uClibcxx/include/associative_base =================================================================== --- trunk/i386/modules/uClibcxx/include/associative_base (revision 2087) +++ trunk/i386/modules/uClibcxx/include/associative_base (revision 2088) @@ -28,10 +28,6 @@ #ifndef __STD_HEADER_ASSOCIATIVE_BASE #define __STD_HEADER_ASSOCIATIVE_BASE -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ @@ -515,7 +511,7 @@ pair insert(const value_type& x){ pair retval; - iterator location = lower_bound(value_to_key(x)); + iterator location = lower_bound(this->value_to_key(x)); retval.second = true; //Empty list or need to insert at end if(end() == location){ @@ -524,7 +520,7 @@ return retval; } //Something in the list - if(c(value_to_key(x), value_to_key(*location))){ + if(c(this->value_to_key(x), this->value_to_key(*location))){ location = backing.insert(location.base_iterator(), x); retval.first = location; }else{ @@ -638,10 +634,6 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop -#endif - #endif //__STD_HEADER_ASSOCIATIVE_BASE Index: trunk/i386/modules/uClibcxx/include/func_exception =================================================================== --- trunk/i386/modules/uClibcxx/include/func_exception (revision 2087) +++ trunk/i386/modules/uClibcxx/include/func_exception (revision 2088) @@ -24,10 +24,6 @@ #ifndef HEADER_IMPLEMENTATION_FUNC_EXCEPTION #define HEADER_IMPLEMENTATION_FUNC_EXCEPTION -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ _UCXXEXPORT void __throw_bad_alloc(); @@ -37,9 +33,5 @@ _UCXXEXPORT void __throw_invalid_argument(const char * message = 0); } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/include/string_iostream =================================================================== --- trunk/i386/modules/uClibcxx/include/string_iostream (revision 2087) +++ trunk/i386/modules/uClibcxx/include/string_iostream (revision 2088) @@ -29,10 +29,6 @@ #ifndef __HEADER_STD_STRING_IOSTREAM #define __HEADER_STD_STRING_IOSTREAM 1 -#ifdef __GCC__ -#pragma GCC visibility push(default) -#endif - namespace std{ @@ -142,9 +138,5 @@ } -#ifdef __GCC__ -#pragma GCC visibility pop #endif -#endif - Index: trunk/i386/modules/uClibcxx/string.cpp =================================================================== --- trunk/i386/modules/uClibcxx/string.cpp (revision 2087) +++ trunk/i386/modules/uClibcxx/string.cpp (revision 2088) @@ -76,11 +76,11 @@ template _UCXXEXPORT bool operator==(const string & lhs, const string & rhs); template _UCXXEXPORT bool operator==(const char * lhs, const string & rhs); - template _UCXXEXPORT bool operator==(const string & rhs, const char * rhs); + template _UCXXEXPORT bool operator==(const string & lhs, const char * rhs); template _UCXXEXPORT bool operator!=(const string & lhs, const string & rhs); template _UCXXEXPORT bool operator!=(const char * lhs, const string & rhs); - template _UCXXEXPORT bool operator!=(const string & rhs, const char * rhs); + template _UCXXEXPORT bool operator!=(const string & lhs, const char * rhs); template _UCXXEXPORT string operator+(const string & lhs, const char* rhs); template _UCXXEXPORT string operator+(const char* lhs, const string & rhs);