------- Comment #1 from rguenth at gcc dot gnu dot org 2009-10-22 09:22 ------- Because C does not promote the bitfield type to its underlying type and thus ends up passing a 40bit field to the varargs function (which obviously doesn't work too good).
Works with the C++ FE. -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |wrong-code Known to fail| |4.0.4 4.5.0 Known to work| |3.4.6 Last reconfirmed|0000-00-00 00:00:00 |2009-10-22 09:22:06 date| | Summary|About Long long bit field |[4.3/4.4/4.5 Regression] | |About Long long bit field Target Milestone|--- |4.3.5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41793