PATCH: Remove bogus locale::id definitions

Mark Mitchell mark@codesourcery.com
Mon Feb 12 01:08:00 GMT 2001


These were perhaps meant to be explicit instantiations -- but they
weren't; they were just defnitions.  We already have explicit
instantiations for these classes, and on AIX this resulted in us
getting two copies of the same variable in the shared object, which
chaos ensuing.

I removed the definitions.

Tested on powerpc-ibm-aix-4.3.2.0.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

2001-02-12  Mark Mitchell  <mark@codesourcery.com>

	* src/locale.cc: Remove bogus locale::id definitions.

Index: locale.cc
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/src/locale.cc,v
retrieving revision 1.27
diff -c -p -r1.27 locale.cc
*** locale.cc	2001/02/07 01:54:21	1.27
--- locale.cc	2001/02/12 09:03:30
*************** namespace std 
*** 61,92 ****
    // Definitions for locale::id of standard facets. 
    locale::id ctype<char>::id;
    locale::id codecvt<char, char, mbstate_t>::id;
-   locale::id num_get<char>::id;
-   locale::id num_put<char>::id;
-   locale::id numpunct<char>::id;
-   locale::id collate<char>::id;
-   locale::id time_get<char>::id;
-   locale::id time_put<char>::id;
-   locale::id money_get<char>::id;
-   locale::id money_put<char>::id;
-   locale::id moneypunct<char, false>::id;
-   locale::id moneypunct<char, true>::id;
-   locale::id messages<char>::id;
  
  #ifdef _GLIBCPP_USE_WCHAR_T  
    locale::id ctype<wchar_t>::id;
    locale::id codecvt<wchar_t, char, mbstate_t>::id;
-   locale::id num_get<wchar_t>::id;
-   locale::id num_put<wchar_t>::id;
-   locale::id numpunct<wchar_t>::id;
-   locale::id collate<wchar_t>::id;
-   locale::id time_get<wchar_t>::id;
-   locale::id time_put<wchar_t>::id;
-   locale::id money_get<wchar_t>::id;
-   locale::id money_put<wchar_t>::id;
-   locale::id moneypunct<wchar_t, false>::id;
-   locale::id moneypunct<wchar_t, true>::id;
-   locale::id messages<wchar_t>::id;
  #endif
  
    // Definitions for static const data members of locale::id
--- 61,70 ----



More information about the Libstdc++ mailing list