See the WG14 reflector thread starting with 
<http://www.open-std.org/jtc1/sc22/wg14/13560>, and the reference back to 
the analysis of the textual history in 
<http://www.open-std.org/jtc1/sc22/wg14/11100>.  Effectively, you can 
treat choices in this area as being implementation-defined or unspecified 
(they can only arise when an implementation defines that types other than 
"a qualified or unqualified version of _Bool, signed int, unsigned int" 
can be used to declare bit-fields).

Nothing has ever defined how conversions to store out-of-range values in 
bit-fields (other than _Bool bit-fields) would work for C if an 
implementation defines such a bit-field not to have its own type (whereas 
as noted in DR#120, this all falls out naturally if you treat the type as 
including the width).

-- 
Joseph S. Myers
jos...@codesourcery.com

Reply via email to