60 lines
1.6 KiB
Plaintext
60 lines
1.6 KiB
Plaintext
%language=ANSI-C
|
|
%define hash-function-name is_reserved_hash
|
|
%define lookup-function-name is_reserved_word
|
|
%{
|
|
struct resword;
|
|
static const struct resword *is_reserved_word(register const char *str, register unsigned int len);
|
|
%}
|
|
struct resword { const char *name; int token; }
|
|
%%
|
|
EXPORT_SYMBOL, EXPORT_SYMBOL_KEYW
|
|
EXPORT_SYMBOL_GPL, EXPORT_SYMBOL_KEYW
|
|
EXPORT_SYMBOL_GPL_FUTURE, EXPORT_SYMBOL_KEYW
|
|
EXPORT_UNUSED_SYMBOL, EXPORT_SYMBOL_KEYW
|
|
EXPORT_UNUSED_SYMBOL_GPL, EXPORT_SYMBOL_KEYW
|
|
__asm, ASM_KEYW
|
|
__asm__, ASM_KEYW
|
|
__attribute, ATTRIBUTE_KEYW
|
|
__attribute__, ATTRIBUTE_KEYW
|
|
__const, CONST_KEYW
|
|
__const__, CONST_KEYW
|
|
__extension__, EXTENSION_KEYW
|
|
__inline, INLINE_KEYW
|
|
__inline__, INLINE_KEYW
|
|
__signed, SIGNED_KEYW
|
|
__signed__, SIGNED_KEYW
|
|
__volatile, VOLATILE_KEYW
|
|
__volatile__, VOLATILE_KEYW
|
|
# According to rth, c99 defines _Bool, __restrict, __restrict__, restrict. KAO
|
|
_Bool, BOOL_KEYW
|
|
_restrict, RESTRICT_KEYW
|
|
__restrict__, RESTRICT_KEYW
|
|
restrict, RESTRICT_KEYW
|
|
asm, ASM_KEYW
|
|
# attribute commented out in modutils 2.4.2. People are using 'attribute' as a
|
|
# field name which breaks the genksyms parser. It is not a gcc keyword anyway.
|
|
# KAO.
|
|
# attribute, ATTRIBUTE_KEYW
|
|
auto, AUTO_KEYW
|
|
char, CHAR_KEYW
|
|
const, CONST_KEYW
|
|
double, DOUBLE_KEYW
|
|
enum, ENUM_KEYW
|
|
extern, EXTERN_KEYW
|
|
float, FLOAT_KEYW
|
|
inline, INLINE_KEYW
|
|
int, INT_KEYW
|
|
long, LONG_KEYW
|
|
register, REGISTER_KEYW
|
|
short, SHORT_KEYW
|
|
signed, SIGNED_KEYW
|
|
static, STATIC_KEYW
|
|
struct, STRUCT_KEYW
|
|
typedef, TYPEDEF_KEYW
|
|
union, UNION_KEYW
|
|
unsigned, UNSIGNED_KEYW
|
|
void, VOID_KEYW
|
|
volatile, VOLATILE_KEYW
|
|
typeof, TYPEOF_KEYW
|
|
__typeof__, TYPEOF_KEYW
|