linux/scripts/genksyms/keywords.gperf
<<
>>
Prefs
   1%{
   2struct resword;
   3static const struct resword *is_reserved_word(register const char *str, register unsigned int len);
   4%}
   5struct resword { const char *name; int token; }
   6%%
   7EXPORT_SYMBOL, EXPORT_SYMBOL_KEYW
   8EXPORT_SYMBOL_GPL, EXPORT_SYMBOL_KEYW
   9EXPORT_SYMBOL_GPL_FUTURE, EXPORT_SYMBOL_KEYW
  10EXPORT_UNUSED_SYMBOL, EXPORT_SYMBOL_KEYW
  11EXPORT_UNUSED_SYMBOL_GPL, EXPORT_SYMBOL_KEYW
  12__asm, ASM_KEYW
  13__asm__, ASM_KEYW
  14__attribute, ATTRIBUTE_KEYW
  15__attribute__, ATTRIBUTE_KEYW
  16__const, CONST_KEYW
  17__const__, CONST_KEYW
  18__extension__, EXTENSION_KEYW
  19__inline, INLINE_KEYW
  20__inline__, INLINE_KEYW
  21__signed, SIGNED_KEYW
  22__signed__, SIGNED_KEYW
  23__volatile, VOLATILE_KEYW
  24__volatile__, VOLATILE_KEYW
  25# According to rth, c99 defines _Bool, __restrict, __restrict__, restrict.  KAO
  26_Bool, BOOL_KEYW
  27_restrict, RESTRICT_KEYW
  28__restrict__, RESTRICT_KEYW
  29restrict, RESTRICT_KEYW
  30asm, ASM_KEYW
  31# attribute commented out in modutils 2.4.2.  People are using 'attribute' as a
  32# field name which breaks the genksyms parser.  It is not a gcc keyword anyway.
  33# KAO.
  34#   attribute, ATTRIBUTE_KEYW
  35auto, AUTO_KEYW
  36char, CHAR_KEYW
  37const, CONST_KEYW
  38double, DOUBLE_KEYW
  39enum, ENUM_KEYW
  40extern, EXTERN_KEYW
  41float, FLOAT_KEYW
  42inline, INLINE_KEYW
  43int, INT_KEYW
  44long, LONG_KEYW
  45register, REGISTER_KEYW
  46short, SHORT_KEYW
  47signed, SIGNED_KEYW
  48static, STATIC_KEYW
  49struct, STRUCT_KEYW
  50typedef, TYPEDEF_KEYW
  51union, UNION_KEYW
  52unsigned, UNSIGNED_KEYW
  53void, VOID_KEYW
  54volatile, VOLATILE_KEYW
  55typeof, TYPEOF_KEYW
  56__typeof__, TYPEOF_KEYW
  57