This patch adds the 'artifical' GCC attribute to list of ignore attributes. It's an attribute that's used by glibc which causes the following bogus sparse warnings when using it for userspace projects: /usr/include/bits/stdlib.h:37:1: error: attribute '__artificial__': unknown attribute /usr/include/bits/stdlib.h:64:1: error: attribute '__artificial__': unknown attribute Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxx> --- ident-list.h | 1 + parse.c | 2 ++ 2 files changed, 3 insertions(+), 0 deletions(-) diff --git a/ident-list.h b/ident-list.h index b94aece..b12d172 100644 --- a/ident-list.h +++ b/ident-list.h @@ -87,6 +87,7 @@ IDENT(fastcall); IDENT(__fastcall__); IDENT(dllimport); IDENT(__dllimport__); IDENT(dllexport); IDENT(__dllexport__); IDENT(restrict); IDENT(__restrict); +IDENT(artificial); IDENT(__artificial__); /* Preprocessor idents. Direct use of __IDENT avoids mentioning the keyword * itself by name, preventing these tokens from expanding when compiling diff --git a/parse.c b/parse.c index 537055f..bcee794 100644 --- a/parse.c +++ b/parse.c @@ -486,6 +486,8 @@ const char *ignored_attributes[] = { "__alloc_size__", "always_inline", "__always_inline__", + "artificial", + "__artificial__", "bounded", "__bounded__", "cdecl", -- 1.7.4.1 -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html