Package: gcc-mingw32
Version: 4.4.4-0.1+b1
Severity: important
Hi,
The attached c++ code always trigger an exception. However
std::locale("") should be valid on my system.
$ /usr/sbin/validlocale ""
locale '' valid and available
Compilation:
$ /usr/bin/i586-mingw32msvc-g++ l.cxx
$ wine ./a.exe
locale::facet::_S_create_c_locale name not valid
Thanks
-- System Information:
Debian Release: 6.0
APT prefers squeeze-updates
APT policy: (500, 'squeeze-updates'), (500, 'stable'), (200,
'testing'), (100, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.37-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages gcc-mingw32 depends on:
ii libc6 2.11.2-10 Embedded GNU C Library: Shared lib
ii libgmp3c2 2:4.3.2+dfsg-1 Multiprecision arithmetic library
ii libmpfr4 3.0.0-2 multiple precision floating-point
ii mingw32-binutils 2.20-0.1 Minimalist GNU win32 (cross) binut
Versions of packages gcc-mingw32 recommends:
ii mingw-w64 0~20100125-3 Minimalist GNU w64 (cross) runtime
ii mingw32-runtime 3.13-1 Minimalist GNU win32 (cross) runti
Versions of packages gcc-mingw32 suggests:
pn cpp-doc <none> (no description available)
pn gcc-doc <none> (no description available)
-- no debconf information
--
Mathieu
#include <iostream>
#include <locale>
int main(int argc, char* argv[])
{
try
{
std::locale loc(argc > 1 ? argv[1] : "");
std::cout << loc.name() << std::endl;
}
catch (const std::exception& e)
{
std::cerr << e.what() << std::endl;
}
return 0;
}