[Bug c++/43393] integral promotion of long bit-fields broken in gcc 4.4.0?
vsoni at tilera dot com
gcc-bugzilla@gcc.gnu.org
Thu Mar 25 00:21:00 GMT 2010
------- Comment #4 from vsoni at tilera dot com 2010-03-25 00:21 -------
(In reply to comment #2)
> I read that t.f promotes to int.
I concede to this interpretation for C++.
Note that the behavior for C/C99 also changed:
$ gcc-4.1.2 -std=c99 -Wall -pedantic x.c; ./a.out
x.c: In function ÂmainÂ:
x.c:5: warning: type of bit-field Âf is a GCC extension
x.c:8: warning: type of bit-field Âf is a GCC extension
100000000 200000000 0
8000 0 0
$ gcc-4.4.0 -std=c99 -Wall -pedantic x.c; ./a.out
x.c: In function ÂmainÂ:
x.c:5: warning: type of bit-field Âf is a GCC extension
x.c:8: warning: type of bit-field Âf is a GCC extension
100000000 0 0
8000 0 0
So apparently s.f doesn't promote to long anymore in C99. Is this change in
behavior also intentional and correct?
--
vsoni at tilera dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|integral promotion of long |integral promotion of long
|bit-fields broken in g++ |bit-fields broken in gcc
|4.4.0 |4.4.0?
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43393
More information about the Gcc-bugs
mailing list