public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
To: gcc-gnats@gcc.gnu.org
Subject: libstdc++/3679: Problems with default locale
Date: Fri, 13 Jul 2001 10:06:00 -0000	[thread overview]
Message-ID: <200107131800.UAA21198@snake.iap.physik.tu-darmstadt.de> (raw)

>Number:         3679
>Category:       libstdc++
>Synopsis:       Problems with default locale
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jul 13 10:06:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Peter Schmid
>Release:        3.1 20010710 (experimental)
>Organization:
TU Darmstadt
>Environment:
System: Linux kiste 2.4.6 #6 Wed Jul 11 02:21:23 CEST 2001 i686 unknown
Architecture: i686
GNU ld version 2.11.90.0.23 (with BFD 2.11.90.0.23)
SuSE 7.1

host: i686-pc-linux-gnu
build: i686-pc-linux-gnu
target: i686-pc-linux-gnu
configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-clocale=gnu --enable-languages=c,c++,f77,objc
>Description:
According to Josuttis "The C++ Standard Library" page 696 -- 697
passing an empty string as the name of the locale has a special
meaning. The default locale from the users's environment is used
(determined the environment variable LANG on Linux). But that does not work
with the current libstdc++ implementation. The value of LANG is 
ignored and the name of Locale1 in the program tgl is set to the empty
string which is wrong. Explicitly importing the German locale as in
Locale2 works though. 
>How-To-Repeat:
Source code tgl.C
#include <iostream>
#include <locale>

using namespace std;

int main()
{
    locale Locale1("");
    cout.imbue(Locale1);
    cout << Locale1.name() << endl;

    locale Locale2("de_DE");
    cout.imbue(Locale2);
    cout << Locale2.name() << endl;

}

Compiling tgl.C
g++ -v -o tgl tgl.C -W -Wall
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs
Configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-clocale=gnu --enable-languages=c,c++,f77,objc
Thread model: posix
gcc version 3.1 20010710 (experimental)
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/cc1plus -v -D__GNUC__=3 -D__GNUC_MINOR__=1 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__NO_INLINE__ -D__STDC_HOSTED__=1 -W -Wall -D_GNU_SOURCE -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i686__ -D__tune_pentiumpro__ tgl.C -D__GNUG__=3 -D__DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -quiet -dumpbase tgl.C -W -Wall -version -o /tmp/ccMPOA3S.s
GNU CPP version 3.1 20010710 (experimental) (cpplib) (i386 Linux/ELF)
GNU C++ version 3.1 20010710 (experimental) (i686-pc-linux-gnu)
	compiled by GNU C version 3.1 20010710 (experimental).
ignoring nonexistent directory "/usr/local/i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include/g++-v3
 /usr/local/include/g++-v3/i686-pc-linux-gnu
 /usr/local/include/g++-v3/backward
 /usr/local/include
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/include
 /usr/include
End of search list.
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../../../i686-pc-linux-gnu/bin/as -V -Qy -o /tmp/cc7kLbiW.o /tmp/ccMPOA3S.s
GNU assembler version 2.11.90.0.23 (i686-pc-linux-gnu) using BFD version 2.11.90.0.23
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/collect2 -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o tgl /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/crtbegin.o -L/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1 -L/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../../../i686-pc-linux-gnu/lib -L/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../.. /tmp/cc7kLbiW.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/crtend.o /usr/lib/crtn.o

Running tgl

LANG=de_DE ./tgl

de_DE
>Fix:
	
>Release-Note:
>Audit-Trail:
>Unformatted:


             reply	other threads:[~2001-07-13 10:06 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-13 10:06 Peter Schmid [this message]
2001-07-16 12:37 bkoz
2001-12-13  3:08 bkoz
2001-12-13  3:16 bkoz
2002-01-27 16:24 rodrigc

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200107131800.UAA21198@snake.iap.physik.tu-darmstadt.de \
    --to=schmid@snake.iap.physik.tu-darmstadt.de \
    --cc=gcc-gnats@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).