This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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






Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]