-#ifndef TS
-#define TS(x,str,val)
-#endif
-
/* These must go first. Some set explicit values. */
#define ALTERNATE(name, val) T(_CXX, T_##name, #name, val)
#define PUNCTUATOR(name, string, val) T(_ALL, T_##name, string, val)
#undef PUNCTUATOR
#undef ALTERNATE
-#define S(name, description) TS(T_##name, description,)
+#define S(name, description) T(_ALL, T_##name, description,)
S(EOF, "end of input")
S(IDENTIFIER, "identifier")
S(NUMBER, "number constant")
S(CHARACTER_CONSTANT, "character constant")
S(STRING_LITERAL, "string literal")
-S(HEADERNAME, "headername")
S(MACRO_PARAMETER, "macro parameter")
S(UNKNOWN_CHAR, "unknown character")
#undef S
S(_CXX, wchar_t)
S(_C99|_GNUC, _Bool)
-S(_ALL, __thread)
+
+S(_C11, _Alignas)
+S(_C11, _Atomic)
+S(_C11, _Generic)
+S(_C11, _Noreturn)
+S(_C11, _Static_assert)
+
S(_ALL, __extension__)
S(_ALL, __builtin_classify_type)
S(_ALL, __builtin_va_list)
#define S(mode, x, val) T(mode, T_##x, #x, val)
S(_C99, __func__,)
S(_ALL, __FUNCTION__, = T___func__)
+S(_C11, _Thread_local, )
+S(_ALL, __thread, = T__Thread_local)
S(_ALL, signed, )
S(_ALL, __signed, = T_signed)
S(_ALL, __signed__, = T_signed)
S(_ALL, __real, = T___real__)
S(_ALL, __imag__, )
S(_ALL, __imag, = T___imag__)
-S(_ALL, __alignof__, )
-S(_ALL, __alignof, = T___alignof__)
-S(_MS, _alignof, = T___alignof__)
+S(_C11, _Alignof, )
+S(_ALL, __alignof__, = T__Alignof)
+S(_ALL, __alignof, = T__Alignof)
+S(_MS, _alignof, = T__Alignof)
S(_ALL, const, )
S(_ALL, __const, = T_const)
S(_ALL, __const__, = T_const)