On Tue, 22 Nov 2011, Andrew MacLeod wrote: > C currently doesn't have a char16_t and char32_t, so they aren't defined
It certainly does have those types, as typedefs defined in <uchar.h> for the same types as uint_least16_t and uint_least32_t. And <stdatomic.h> is also required to define ATOMIC_CHAR16_T_LOCK_FREE and ATOMIC_CHAR32_T_LOCK_FREE. Your code in c-cppbuiltin.c appears to be using sizeof applied to *host* types, which is definitely wrong. You need to examine the precision of the relevant tree nodes. -- Joseph S. Myers jos...@codesourcery.com