[Patch] libstdc++/29217

Paolo Carlini pcarlini@suse.de
Tue Sep 26 11:18:00 GMT 2006


Hi,

this issue is annoying: we have got an inconsistency between the 
numerical encodings of the collate and time categories and the 
corresponding names. Ideally, we would like to cleanly fix the former 
(see alternate patch (only the first and third hunks do the real job)), 
but we can't at this stage, because that means that old code linked vs 
the updated library regresses, gets the wrong category replaced when 
calling the various out of line locale constructors taking a category. 
I'm afraid we need the below workaround, for now.

Compatibility issues also block a different elegant solution: change the 
order of the names instead (thus locale::name()) and make locale(const 
char*), input in general, smarter, able to deal with arbitrary orders: a 
locale::name() produced by the new library would be read incorrectly by 
an old binary elsewhere.

Tested x86-linux, if nobody disagree, for 4.2.0 I would go ahead with 
the workaround.

Paolo.

////////////////
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: CL_29217
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20060926/2dafca76/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_29217
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20060926/2dafca76/attachment-0001.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch_29217_alt_oc
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20060926/2dafca76/attachment-0002.ksh>


More information about the Libstdc++ mailing list