[Bug c++/59873] The value of char32_t U'\u0000' and char16_t u'\u000' is 1, instead of 0.

wjl at icecavern dot net gcc-bugzilla@gcc.gnu.org
Sat Jan 18 22:05:00 GMT 2014


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

Wesley J. Landaker <wjl at icecavern dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Version|4.8.3                       |4.9.0

--- Comment #1 from Wesley J. Landaker <wjl at icecavern dot net> ---
I just tested this with gcc 4.9 in Debian experimental and the problem still
exists there:

$ g++-4.9 --version
g++-4.9 (Debian 4.9-20140116-1) 4.9.0 20140116 (experimental) [trunk revision
206688]
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ g++-4.9 -Wall -Wextra -std=c++11 test.c++ 
$ ./a.out 
null (char32_t) = 1
null (uint32_t) = 1
soh (char32_t) = 1
soh (uint32_t) = 1
char32_t null == soh = 1
null (char16_t) = 1
null (uint16_t) = 1
soh (char16_t) = 1
soh (uint16_t) = 1
char16_t null == soh = 1



More information about the Gcc-bugs mailing list