In particular, the following identifiers (along with their __X__ variants)
are now accepted as attribute names: fastcall, dllimport and dllexport.
(cdecl and stdcall were added in baf2c5a84e by Michael Stefaniuc).
For now, at least, these attributes are just ignored.

Signed-off-by: Ramsay Jones <[EMAIL PROTECTED]>
---
 ident-list.h |    7 +++++++
 parse.c      |    6 ++++++
 2 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/ident-list.h b/ident-list.h
index 7633a2f..d09c2ab 100644
--- a/ident-list.h
+++ b/ident-list.h
@@ -70,6 +70,13 @@ IDENT(nonnull); IDENT(__nonnull); IDENT(__nonnull__);
 IDENT(__deprecated__);
 IDENT(__warn_unused_result__);

+/* WIN32 specific Attribute names */
+IDENT(cdecl); IDENT(__cdecl__);
+IDENT(stdcall); IDENT(__stdcall__);
+IDENT(fastcall); IDENT(__fastcall__);
+IDENT(dllimport); IDENT(__dllimport__);
+IDENT(dllexport); IDENT(__dllexport__);
+
 /* Preprocessor idents */
 __IDENT(pragma_ident, "__pragma__", 0);
 __IDENT(__VA_ARGS___ident, "__VA_ARGS__", 0);
diff --git a/parse.c b/parse.c
index b74c7c0..db5c9e6 100644
--- a/parse.c
+++ b/parse.c
@@ -327,6 +327,12 @@ static struct init_keyword {
        { "__cdecl__",        NS_KEYWORD,     .op = &ignore_attr_op },
        { "stdcall",  NS_KEYWORD,     .op = &ignore_attr_op },
        { "__stdcall__",      NS_KEYWORD,     .op = &ignore_attr_op },
+       { "fastcall", NS_KEYWORD,     .op = &ignore_attr_op },
+       { "__fastcall__",     NS_KEYWORD,     .op = &ignore_attr_op },
+       { "dllimport",        NS_KEYWORD,     .op = &ignore_attr_op },
+       { "__dllimport__",    NS_KEYWORD,     .op = &ignore_attr_op },
+       { "dllexport",        NS_KEYWORD,     .op = &ignore_attr_op },
+       { "__dllexport__",    NS_KEYWORD,     .op = &ignore_attr_op },
 };

 void init_parser(int stream)
--
1.5.1


-
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

Reply via email to