Arnaud Lacombe | 45c47d9 | 2011-05-04 21:18:27 -0400 | [diff] [blame] | 1 | %language=ANSI-C |
| 2 | %define hash-function-name is_reserved_hash |
| 3 | %define lookup-function-name is_reserved_word |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 4 | %{ |
Josh Triplett | ed9df09 | 2009-10-15 12:58:40 -0700 | [diff] [blame] | 5 | struct resword; |
| 6 | static const struct resword *is_reserved_word(register const char *str, register unsigned int len); |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 7 | %} |
| 8 | struct resword { const char *name; int token; } |
| 9 | %% |
| 10 | EXPORT_SYMBOL, EXPORT_SYMBOL_KEYW |
| 11 | EXPORT_SYMBOL_GPL, EXPORT_SYMBOL_KEYW |
Greg Kroah-Hartman | 9f28bb7 | 2006-03-20 13:17:13 -0800 | [diff] [blame] | 12 | EXPORT_SYMBOL_GPL_FUTURE, EXPORT_SYMBOL_KEYW |
Jan Beulich | 6299fee | 2009-12-05 20:20:50 +0000 | [diff] [blame] | 13 | EXPORT_UNUSED_SYMBOL, EXPORT_SYMBOL_KEYW |
| 14 | EXPORT_UNUSED_SYMBOL_GPL, EXPORT_SYMBOL_KEYW |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 15 | __asm, ASM_KEYW |
| 16 | __asm__, ASM_KEYW |
| 17 | __attribute, ATTRIBUTE_KEYW |
| 18 | __attribute__, ATTRIBUTE_KEYW |
| 19 | __const, CONST_KEYW |
| 20 | __const__, CONST_KEYW |
Sam Ravnborg | 3550a51 | 2007-08-28 20:28:55 +0200 | [diff] [blame] | 21 | __extension__, EXTENSION_KEYW |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 22 | __inline, INLINE_KEYW |
| 23 | __inline__, INLINE_KEYW |
| 24 | __signed, SIGNED_KEYW |
| 25 | __signed__, SIGNED_KEYW |
Jan Beulich | dc53324 | 2014-04-03 14:46:37 -0700 | [diff] [blame] | 26 | __typeof, TYPEOF_KEYW |
| 27 | __typeof__, TYPEOF_KEYW |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 28 | __volatile, VOLATILE_KEYW |
| 29 | __volatile__, VOLATILE_KEYW |
| 30 | # According to rth, c99 defines _Bool, __restrict, __restrict__, restrict. KAO |
| 31 | _Bool, BOOL_KEYW |
| 32 | _restrict, RESTRICT_KEYW |
| 33 | __restrict__, RESTRICT_KEYW |
| 34 | restrict, RESTRICT_KEYW |
| 35 | asm, ASM_KEYW |
| 36 | # attribute commented out in modutils 2.4.2. People are using 'attribute' as a |
| 37 | # field name which breaks the genksyms parser. It is not a gcc keyword anyway. |
| 38 | # KAO. |
| 39 | # attribute, ATTRIBUTE_KEYW |
| 40 | auto, AUTO_KEYW |
| 41 | char, CHAR_KEYW |
| 42 | const, CONST_KEYW |
| 43 | double, DOUBLE_KEYW |
| 44 | enum, ENUM_KEYW |
| 45 | extern, EXTERN_KEYW |
| 46 | float, FLOAT_KEYW |
| 47 | inline, INLINE_KEYW |
| 48 | int, INT_KEYW |
| 49 | long, LONG_KEYW |
| 50 | register, REGISTER_KEYW |
| 51 | short, SHORT_KEYW |
| 52 | signed, SIGNED_KEYW |
| 53 | static, STATIC_KEYW |
| 54 | struct, STRUCT_KEYW |
| 55 | typedef, TYPEDEF_KEYW |
Jan Beulich | dc53324 | 2014-04-03 14:46:37 -0700 | [diff] [blame] | 56 | typeof, TYPEOF_KEYW |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 57 | union, UNION_KEYW |
| 58 | unsigned, UNSIGNED_KEYW |
| 59 | void, VOID_KEYW |
| 60 | volatile, VOLATILE_KEYW |