[
https://issues.apache.org/jira/browse/STDCXX-263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12588336#action_12588336
]
Martin Sebor commented on STDCXX-263:
-------------------------------------
Readily reproducible on Fedora 8:
{noformat}
$ cat /etc/redhat-release \
&& ../bin/localedef -w -f ~/stdcxx/etc/nls/charmaps/ISO-8859-1 -i
~/stdcxx/etc/nls/src/de_DE de_DE.ISO-8859 \
&& make t && env LC_ALL=./de_DE.ISO-8859 ./t
Fedora release 8 (Werewolf)
gcc -c -I/home/sebor/stdcxx/include/ansi -D_RWSTDDEBUG -pthread
-I/home/sebor/stdcxx/include -I/build/sebor/stdcxx-gcc-4.1.2-15D/include
-I/home/sebor/stdcxx/examples/include -pedantic -nostdinc++ -g -W -Wall
-Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long -Wcast-align
t.cpp
gcc t.o -o t -pthread -L/build/sebor/stdcxx-gcc-4.1.2-15D/lib
-Wl,-R/build/sebor/stdcxx-gcc-4.1.2-15D/lib -lstd15D -lsupc++ -lm
/home/sebor/stdcxx/src/locale_combine.cpp:644: std::locale::locale(const
char*): bad locale name: ""
{noformat}
> SIGABRT in locale("") after setting LC_ALL to pathname of own locale
> --------------------------------------------------------------------
>
> Key: STDCXX-263
> URL: https://issues.apache.org/jira/browse/STDCXX-263
> Project: C++ Standard Library
> Issue Type: Bug
> Components: 22. Localization
> Affects Versions: 4.1.2, 4.1.3, 4.1.4, 4.2.0
> Environment: all
> Reporter: Martin Sebor
> Assignee: Martin Sebor
> Priority: Critical
> Fix For: 4.2.2
>
> Original Estimate: 4h
> Remaining Estimate: 4h
>
> {noformat}
> $ ../bin/localedef -w -f
> /nfs/devco/sebor/dev/stdlib/etc/nls/charmaps/ISO-8859-1 -i
> /nfs/devco/sebor/dev/stdlib/etc/nls/src/de_DE de_DE.ISO-8859 && cat t.cpp &&
> make t && LC_ALL=./de_DE.ISO-8859 ./t
> #include <cassert>
> #include <cstdio>
> #include <cstring>
> #include <exception>
> #include <ios>
> #include <locale>
> int main ()
> {
> try {
> std::locale::global (std::locale (""));
> typedef std::num_put<char, char*> NumPut;
> std::ios strm (0);
> NumPut np;
> char buf [40] = "";
> np.put (buf, strm, ' ', 123.456);
> std::printf ("%s\n", buf);
> assert (0 == std::strcmp ("123,456", buf));
> }
> catch (std::exception &ex) {
> std::fprintf (stderr, "%s\n", ex.what ());
> return 1;
> }
> }
> xlc_r -c -I/amd/devco/sebor/dev/stdlib/include/ansi -D_RWSTDDEBUG
> -D_RWSTD_USE_CONFIG -I/amd/devco/sebor/dev/stdlib/include
> -I/build/sebor/xlc-8.0-15S/include
> -I/amd/devco/sebor/dev/stdlib/examples/include
> -F/package/1/ppc64/compilers/ibm/va80/vac.cfg -g -q64
> -qtemplateregistry=t.ti t.cpp
> xlc_r t.o -o t -F/package/1/ppc64/compilers/ibm/va80/vac.cfg
> -I/amd/devco/sebor/dev/stdlib/include/ansi -D_RWSTDDEBUG
> -D_RWSTD_USE_CONFIG -q64 -I/amd/devco/sebor/dev/stdlib/include/ansi
> -D_RWSTDDEBUG -D_RWSTD_USE_CONFIG -I/amd/devco/sebor/dev/stdlib/include
> -I/build/sebor/xlc-8.0-15S/include
> -I/amd/devco/sebor/dev/stdlib/examples/include -qtemplateregistry=t.ti
> -L/build/sebor/xlc-8.0-15S/lib -lstd15S -lxlopt -lxl -libmc++ -lsupc++ -lgcc
> -lc -qnostaticlink=libgcc -lm
> /usr/bin/ld:
> /build/sebor/xlc-8.0-15S/lib/libstd15S.a(exception.o)(.debug_info+0xcd99):
> R_PPC64_ADDR64 used with TLS symbol __rw_what_refcnt
> /usr/bin/ld:
> /build/sebor/xlc-8.0-15S/lib/libstd15S.a(exception.o)(.debug_info+0xcdc0):
> R_PPC64_ADDR64 used with TLS symbol __rw_what_buf
> /amd/devco/sebor/dev/stdlib/src/locale_combine.cpp:639: std::locale::locale:
> bad locale name: ""
> {noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.