aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2011-06-19 19:20:51 +0300
committerChristopher Li <sparse@chrisli.org>2011-06-28 17:12:28 -0700
commit9bc7588b099c4178a509696c4f423fd170180c28 (patch)
treefe20041691cdf6d169d436254f4d536ec152f0ee
parent271cb1a33b9d1354ddca75d5c670e98dc4943092 (diff)
downloadsparse-9bc7588b099c4178a509696c4f423fd170180c28.tar.gz
sparse: Add 'artifical' to ignore attributes
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@kernel.org> Signed-off-by: Christopher Li <sparse@chrisli.org>
-rw-r--r--ident-list.h1
-rw-r--r--parse.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/ident-list.h b/ident-list.h
index b94aece0..b12d1720 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 57f369bb..082c2c40 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",