![Sam Ravnborg](/assets/img/avatar_default.png)
Recently the __extension__ keyword has been introduced in the kernel. Teach genksyms about this keyword so it can generate correct CRC for exported symbols that uses a symbol marked __extension__. For now only the typedef variant: __extension__ typedef ... is supported. Later we may add more variants as needed. This patch contains the actual source file changes. The following patch will hold modifications to the generated files (*_shipped) and only after the second patch the fix has effect. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
53 lines
1.3 KiB
Text
53 lines
1.3 KiB
Text
%{
|
|
%}
|
|
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
|
|
__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
|