http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56086
--- Comment #3 from Roger Jarrett <rjarrett at mathworks dot com> 2013-01-27 16:13:48 UTC --- The macro __STDC_UTF_16__ is being used to guard the following typedef typedef char16_t CHAR16_T; compiling the program (attached program t2.c) typedef char16_t fred; int main() { } with gcc 4.7.1 or 4.7.2 results in a compilation error: gcc -std=gnu99 t2.c t2.c:1:1: error: unknown type name 'char16_t' However, it succeeds as expected when compiled with g++ -std=c++11 t2.c What am I missing here ? --Roger