summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Dahlin <jdahlin@async.com.br>2008-10-30 17:48:45 +0000
committerJohan Dahlin <johan@src.gnome.org>2008-10-30 17:48:45 +0000
commitcefa272f236f84a8539350141b39dca40c51538a (patch)
tree5bbe5acead2a5089b440872e8b7da25190ca63ac
parent53d089628f98fca0ca7984a95902134a7d7c11b8 (diff)
downloadgobject-introspection-cefa272f236f84a8539350141b39dca40c51538a.tar.gz
Parse and discard __typeof and __attribute.
2008-10-30 Johan Dahlin <jdahlin@async.com.br> * giscanner/scannerlexer.l: Parse and discard __typeof and __attribute. svn path=/trunk/; revision=843
-rw-r--r--ChangeLog5
-rw-r--r--giscanner/scannerlexer.l9
2 files changed, 10 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 81caed94..eb750c48 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2008-10-30 Johan Dahlin <jdahlin@async.com.br>
+ * giscanner/scannerlexer.l:
+ Parse and discard __typeof and __attribute.
+
+2008-10-30 Johan Dahlin <jdahlin@async.com.br>
+
* giscanner/girparser.py:
Remove arguments from the constructor, move them to
separate accessors. Add a new parse_tree method
diff --git a/giscanner/scannerlexer.l b/giscanner/scannerlexer.l
index 9a1daf6a..50dec6c8 100644
--- a/giscanner/scannerlexer.l
+++ b/giscanner/scannerlexer.l
@@ -118,20 +118,22 @@ stringtext ([^\\\"])|(\\.)
"," { return ','; }
"->" { return ARROW; }
+"__asm" { if (!parse_ignored_macro()) REJECT; }
+"__asm__" { if (!parse_ignored_macro()) REJECT; }
"__attribute__" { if (!parse_ignored_macro()) REJECT; }
+"__attribute" { if (!parse_ignored_macro()) REJECT; }
"__const" { return CONST; }
"__extension__" { return EXTENSION; }
"__inline" { return INLINE; }
"__nonnull" { if (!parse_ignored_macro()) REJECT; }
"__restrict" { return RESTRICT; }
+"__typeof" { if (!parse_ignored_macro()) REJECT; }
+"_Bool" { return BOOL; }
[a-zA-Z_][a-zA-Z_0-9]* { if (scanner->macro_scan) return IDENTIFIER; else REJECT; }
"asm" { if (!parse_ignored_macro()) REJECT; }
-"__asm" { if (!parse_ignored_macro()) REJECT; }
-"__asm__" { if (!parse_ignored_macro()) REJECT; }
"auto" { return AUTO; }
-"_Bool" { return BOOL; }
"break" { return BREAK; }
"case" { return CASE; }
"char" { return CHAR; }
@@ -148,7 +150,6 @@ stringtext ([^\\\"])|(\\.)
"goto" { return GOTO; }
"if" { return IF; }
"inline" { return INLINE; }
-"__inline__" { return INLINE; }
"int" { return INT; }
"long" { return LONG; }
"register" { return REGISTER; }