c_locale.h (__convert_from_v): Include <cstdio>.

2003-07-14  Paolo Carlini  <pcarlini@unitus.it>

	* config/locale/gnu/c_locale.h (__convert_from_v): Include
	<cstdio>. Qualify names.
	* config/locale/generic/c_locale.h (__convert_from_v): Ditto.

From-SVN: r69343
This commit is contained in:
Paolo Carlini 2003-07-14 21:46:29 +02:00 committed by Paolo Carlini
parent 5e08432ed0
commit 2def5b76e3
3 changed files with 22 additions and 14 deletions

View File

@ -1,3 +1,9 @@
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
* config/locale/gnu/c_locale.h (__convert_from_v): Include
<cstdio>. Qualify names.
* config/locale/generic/c_locale.h (__convert_from_v): Ditto.
2003-07-14 Paolo Carlini <pcarlini@unitus.it>
Nathan C. Myers <ncm-nospam@cantrip.org>

View File

@ -39,8 +39,9 @@
#pragma GCC system_header
#include <clocale>
#include <cstdlib>
#include <cstring>
#include <cstdlib> // get std::malloc
#include <cstring> // get std::strlen
#include <cstdio> // get std::snprintf or std::sprintf
#define _GLIBCXX_NUM_CATEGORIES 0
@ -59,26 +60,26 @@ namespace std
const char* __fmt,
_Tv __v, const __c_locale&, int __prec = -1)
{
char* __old = setlocale(LC_ALL, NULL);
char* __sav = static_cast<char*>(malloc(strlen(__old) + 1));
char* __old = std::setlocale(LC_ALL, NULL);
char* __sav = static_cast<char*>(std::malloc(std::strlen(__old) + 1));
if (__sav)
strcpy(__sav, __old);
setlocale(LC_ALL, "C");
std::strcpy(__sav, __old);
std::setlocale(LC_ALL, "C");
int __ret;
#ifdef _GLIBCXX_USE_C99
if (__prec >= 0)
__ret = snprintf(__out, __size, __fmt, __prec, __v);
__ret = std::snprintf(__out, __size, __fmt, __prec, __v);
else
__ret = snprintf(__out, __size, __fmt, __v);
__ret = std::snprintf(__out, __size, __fmt, __v);
#else
if (__prec >= 0)
__ret = sprintf(__out, __fmt, __prec, __v);
__ret = std::sprintf(__out, __fmt, __prec, __v);
else
__ret = sprintf(__out, __fmt, __v);
__ret = std::sprintf(__out, __fmt, __v);
#endif
setlocale(LC_ALL, __sav);
free(__sav);
std::setlocale(LC_ALL, __sav);
std::free(__sav);
return __ret;
}
}

View File

@ -40,6 +40,7 @@
#include <cstring> // get std::strlen
#include <cstdlib> // get std::malloc
#include <cstdio> // get std::snprintf or std::sprintf
#include <clocale>
#include <langinfo.h> // For codecvt
#include <iconv.h> // For codecvt using iconv, iconv_t
@ -84,9 +85,9 @@ namespace std
int __ret;
#ifdef _GLIBCXX_USE_C99
if (__prec >= 0)
__ret = snprintf(__out, __size, __fmt, __prec, __v);
__ret = std::snprintf(__out, __size, __fmt, __prec, __v);
else
__ret = snprintf(__out, __size, __fmt, __v);
__ret = std::snprintf(__out, __size, __fmt, __v);
#else
if (__prec >= 0)
__ret = std::sprintf(__out, __fmt, __prec, __v);