libstdc++/9378: 64-bit g++: construct base:std::moneypunct_byname<char>->memory fault

Martin Sebor sebor@roguewave.com
Wed Jan 29 21:26:00 GMT 2003


The following reply was made to PR libstdc++/9378; it has been noted by GNATS.

From: Martin Sebor <sebor@roguewave.com>
To: bkoz@gcc.gnu.org, axiong@ca.ibm.com, gcc-bugs@gcc.gnu.org,
   gcc-prs@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:  
Subject: Re: libstdc++/9378: 64-bit g++: construct base:std::moneypunct_byname<char>->memory
 fault
Date: Wed, 29 Jan 2003 14:24:10 -0700

 bkoz@gcc.gnu.org wrote:
 ...
 >     
 >     ISO 14882: 22.1.1.2 locale ctors and dtors
 >     
 >     throws: runtime_error if the argument is ont valid, or is null. The set of valid string argument values is "C", "", and any implementation-defined values.
 >     
 >     In the above case, you're trying to create a locale based on the implementation-defined value of "abc." The GNU implemenation defines this value to be junk, and errors out. (Correctly so, I think.)
 
 FWIW, I don't think the requirements on the ctors of class
 locale are relevant in this case. The problem is, IMO, that
 there are no requirements at all on the ctors of the byname
 facets, so pretty much anything goes. I.e., abort is just
 as legal as successful construction.
 
 Regards
 Martin
 
  >
 ...
 > 
 > http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9378
 



More information about the Gcc-prs mailing list