diff options
Diffstat (limited to 'contrib/libstdc++/config/locale/gnu')
10 files changed, 35 insertions, 15 deletions
diff --git a/contrib/libstdc++/config/locale/gnu/c_locale.cc b/contrib/libstdc++/config/locale/gnu/c_locale.cc index 188f3a2f1c1b..065e10aa2e1b 100644 --- a/contrib/libstdc++/config/locale/gnu/c_locale.cc +++ b/contrib/libstdc++/config/locale/gnu/c_locale.cc @@ -1,6 +1,6 @@ // Wrapper for underlying C-language localization -*- C++ -*- -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -36,7 +36,7 @@ #include <locale> #include <stdexcept> #include <langinfo.h> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { @@ -191,9 +191,9 @@ namespace std + _S_extra_categories_size] = { "LC_CTYPE", - "LC_NUMERIC", - "LC_COLLATE", + "LC_NUMERIC", "LC_TIME", + "LC_COLLATE", "LC_MONETARY", "LC_MESSAGES", "LC_PAPER", diff --git a/contrib/libstdc++/config/locale/gnu/c_locale.h b/contrib/libstdc++/config/locale/gnu/c_locale.h index 130b843d7f9e..37df3fa3a3af 100644 --- a/contrib/libstdc++/config/locale/gnu/c_locale.h +++ b/contrib/libstdc++/config/locale/gnu/c_locale.h @@ -1,6 +1,6 @@ // Wrapper for underlying C-language localization -*- C++ -*- -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. +// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -33,6 +33,11 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> +#ifndef _CPP_BITS_C_LOCALE_H +#define _CPP_BITS_C_LOCALE_H 1 + +#pragma GCC system_header + #include <clocale> #include <langinfo.h> // For codecvt #include <iconv.h> // For codecvt using iconv, iconv_t @@ -53,6 +58,10 @@ namespace std { typedef __locale_t __c_locale; + // Convert numeric value of type _Tv to string and return length of + // string. If snprintf is available use it, otherwise fall back to + // the unsafe sprintf which, in general, can be dangerous and should + // be avoided. template<typename _Tv> int __convert_from_v(char* __out, const int __size, const char* __fmt, @@ -92,3 +101,5 @@ namespace std return __ret; } } + +#endif diff --git a/contrib/libstdc++/config/locale/gnu/codecvt_members.cc b/contrib/libstdc++/config/locale/gnu/codecvt_members.cc index 3569f6bf57b8..c3d3e34935c5 100644 --- a/contrib/libstdc++/config/locale/gnu/codecvt_members.cc +++ b/contrib/libstdc++/config/locale/gnu/codecvt_members.cc @@ -1,6 +1,6 @@ // std::codecvt implementation details, GNU version -*- C++ -*- -// Copyright (C) 2002 Free Software Foundation, Inc. +// Copyright (C) 2002, 2003 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -34,7 +34,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { diff --git a/contrib/libstdc++/config/locale/gnu/collate_members.cc b/contrib/libstdc++/config/locale/gnu/collate_members.cc index 97ff0c557b01..1ac209467d88 100644 --- a/contrib/libstdc++/config/locale/gnu/collate_members.cc +++ b/contrib/libstdc++/config/locale/gnu/collate_members.cc @@ -34,7 +34,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { diff --git a/contrib/libstdc++/config/locale/gnu/ctype_members.cc b/contrib/libstdc++/config/locale/gnu/ctype_members.cc index 3b78c60405a1..e0be949f2cc5 100644 --- a/contrib/libstdc++/config/locale/gnu/ctype_members.cc +++ b/contrib/libstdc++/config/locale/gnu/ctype_members.cc @@ -34,7 +34,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { diff --git a/contrib/libstdc++/config/locale/gnu/messages_members.cc b/contrib/libstdc++/config/locale/gnu/messages_members.cc index 54a3c8fa9f64..fad01dfabfc4 100644 --- a/contrib/libstdc++/config/locale/gnu/messages_members.cc +++ b/contrib/libstdc++/config/locale/gnu/messages_members.cc @@ -34,7 +34,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { diff --git a/contrib/libstdc++/config/locale/gnu/monetary_members.cc b/contrib/libstdc++/config/locale/gnu/monetary_members.cc index 0386ab6dc546..b3ef13b23416 100644 --- a/contrib/libstdc++/config/locale/gnu/monetary_members.cc +++ b/contrib/libstdc++/config/locale/gnu/monetary_members.cc @@ -34,7 +34,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { @@ -317,7 +317,11 @@ namespace std template<> void moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc, +#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) + const char*) +#else const char* __name) +#endif { if (!__cloc) { @@ -413,8 +417,12 @@ namespace std template<> void - moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, + moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc, +#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) + const char*) +#else const char* __name) +#endif { if (!__cloc) { diff --git a/contrib/libstdc++/config/locale/gnu/numeric_members.cc b/contrib/libstdc++/config/locale/gnu/numeric_members.cc index a502bfb2150f..1aa05293d4cc 100644 --- a/contrib/libstdc++/config/locale/gnu/numeric_members.cc +++ b/contrib/libstdc++/config/locale/gnu/numeric_members.cc @@ -34,7 +34,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { diff --git a/contrib/libstdc++/config/locale/gnu/time_members.cc b/contrib/libstdc++/config/locale/gnu/time_members.cc index 7df10b8ab716..db590efbb9c4 100644 --- a/contrib/libstdc++/config/locale/gnu/time_members.cc +++ b/contrib/libstdc++/config/locale/gnu/time_members.cc @@ -35,7 +35,7 @@ // Written by Benjamin Kosnik <bkoz@redhat.com> #include <locale> -#include "c++locale_internal.h" +#include <bits/c++locale_internal.h> namespace std { diff --git a/contrib/libstdc++/config/locale/gnu/time_members.h b/contrib/libstdc++/config/locale/gnu/time_members.h index 46342e82f46f..2ea24102808d 100644 --- a/contrib/libstdc++/config/locale/gnu/time_members.h +++ b/contrib/libstdc++/config/locale/gnu/time_members.h @@ -46,7 +46,8 @@ template<typename _CharT> __timepunct<_CharT>::__timepunct(__c_locale __cloc, - const char* __s, size_t __refs) + const char* __s, + size_t __refs) : locale::facet(__refs) { #if !(__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)) |