Your patch assumes every attribute apply to node instead of type.
Is there any attribute need to apply to type instead?
For your change, apply_modifiers() need to change where it take the
__mode__ attribute as well.
Chris
On 1/31/07, Mitesh Shah <[EMAIL PROTECTED]> wrote:
It seems that the attributes are not stored with the variable ctype when the
variable is an array. For declaration such as,
char c[100] __attribute__((aligned(64)));
The attribute is stored with the array ctype instead of the variable C ctype.
In function direct_declarator in parse.c at line 920 the ctype gets replaced
with the array ctype and in the next iteration it is
passed to handle_attributes. handle_attributes should be passed the original
ctype so here is the patch.
Thanks,
-Mitesh
-------------------------------------------------------
index 5077ee6..306b144 100644
--- a/parse.c
+++ b/parse.c
@@ -881,7 +881,7 @@ static struct token *direct_declarator(struct token *token,
struct symbol *decl,
}
for (;;) {
- token = handle_attributes(token, ctype);
+ token = handle_attributes(token, &decl->ctype);
if (token_type(token) != TOKEN_SPECIAL)
return token;
-
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
-
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html