diff mbox

sparse: Add 'artifical' to ignore attributes

Message ID 1308500451-22637-1-git-send-email-penberg@kernel.org (mailing list archive)
State Mainlined, archived
Headers show

Commit Message

Pekka Enberg June 19, 2011, 4:20 p.m. UTC
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>
---
 ident-list.h |    1 +
 parse.c      |    2 ++
 2 files changed, 3 insertions(+), 0 deletions(-)

Comments

Christopher Li June 20, 2011, 5:36 p.m. UTC | #1
On Sun, Jun 19, 2011 at 9:20 AM, Pekka Enberg <penberg@kernel.org> wrote:
> 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:

Thanks for the patch. It  looks good. Will apply.

Chris
--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

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",