[PATCH] ctype: Fix bitfield types on 16-bit targets

Hans-Bernhard Bröker HBBroeker@t-online.de
Fri Jul 20 17:43:00 GMT 2018


Am 20.07.2018 um 13:07 schrieb Sebastian Huber:
> -  unsigned int first: 24; -  unsigned short delta; +  uint_least32_t
> first: 24; +  uint_least16_t delta;

Unfortunately that makes the code's correctness implementation-defined,
because it now depends on what the underlying implementation's take on
the constraint C99 6.7.2.1p4 is:

	A bit-field shall have a type that is a qualified or unqualified
	version of _Bool, signed int, unsigned int, or some other	
	implementation-defined type.

I.e. compilers are not required to allow uint32_least_t in this place.



More information about the Newlib mailing list