Messages in this thread | | | From | Kyle Moffett <> | Subject | Re: __STRICT_ANSI__ checks in headers | Date | Sat, 7 Oct 2006 03:17:55 -0400 |
| |
On Oct 06, 2006, at 04:26:22, David Woodhouse wrote: > On Thu, 2006-10-05 at 11:16 +0300, Ismail Donmez wrote: >> The problem shows itself in the modpost, somehow __extension__ >> clause seems to foobar module CRC. I am not yet successfull on >> making modpost ignore >> __extension__ . >> >> Any ideas appreciated. > > Something like this (and build with GENERATE_PARSER=1) _ought_ to > do it, > but doesn't work: > > @@ -269,7 +270,7 @@ cvar_qualifier_seq: > > cvar_qualifier: > CONST_KEYW | VOLATILE_KEYW | ATTRIBUTE_PHRASE > - | RESTRICT_KEYW > + | RESTRICT_KEYW | EXTENSION_KEYW > { /* restrict has no effect in prototypes so ignore it */ > remove_node($1); > $$ = $1;
Well it's actually technically not a cvar_qualifier; it's a pseudo- arbitrarily attached keyword that can be stuck on any number of GCC- only constructs, like nested code: "__extension__ ({ foo(); 1; })" for example.
Probably the simplest thing to do is actually to just convert it into a nonexistent or whitespace token, or if there's a preprocessing step just #define it to the empty string.
Cheers, Kyle Moffett
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |