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]

[Bug libstdc++/34733] numpunct::grouping() doesn't match libc value for Bulgarian (bg_BG) locale



------- Comment #3 from pcarlini at suse dot de  2008-01-11 02:18 -------
(In reply to comment #2)
> Right, in C it does mean that (because thousands_sep is a multibyte string, and
> so the value is really ""). The problem is that in C++ a NUL thousands_sep is a
> perfectly valid single-byte character, i.e., '\0'. IMO, the way to fix it is by
> somehow distinguishing a NUL thousands_sep that comes from the system locale
> (e.g., via localeconv()) and a NUL thousands_sep intentionally supplied by the
> user (read "test suite writer" ;-) because they want to see it on output.

I do not understand. When v3 sees a NUL thousand separator in a system locale
(like bg_BG or what else), it understands no grouping, consistently with C, as
you are saying. In that case, what it would see as GROUPING with langinfo is
simply not relevant, I would say random garbage. Therefore, there is no point
in comparing anything. What should we change?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34733


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