diff options
author | Giovanni Campagna <gcampagna@src.gnome.org> | 2011-04-03 23:13:09 +0200 |
---|---|---|
committer | Giovanni Campagna <gcampagna@src.gnome.org> | 2011-05-12 19:46:35 +0200 |
commit | 89908f752a9467f0659c2d93aaf7ee1b99716119 (patch) | |
tree | e8272cf6691e6dd9c87f3f7fffb1adc2c09a264e /giscanner/scannerparser.y | |
parent | b8247d8291f3386363933710d09f698e5e8e98bd (diff) | |
download | gobject-introspection-89908f752a9467f0659c2d93aaf7ee1b99716119.tar.gz |
GScannerParser: recognize character constants
Some enumerations (like GVariantClass) use characters instead of
plain integers, so we need to recognize them.
https://bugzilla.gnome.org/show_bug.cgi?id=646635
Diffstat (limited to 'giscanner/scannerparser.y')
-rw-r--r-- | giscanner/scannerparser.y | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/giscanner/scannerparser.y b/giscanner/scannerparser.y index fc4a2850..6400f728 100644 --- a/giscanner/scannerparser.y +++ b/giscanner/scannerparser.y @@ -243,7 +243,9 @@ primary_expression } | CHARACTER { - $$ = gi_source_symbol_new (CSYMBOL_TYPE_INVALID, lineno); + $$ = gi_source_symbol_new (CSYMBOL_TYPE_CONST, lineno); + $$->const_int_set = TRUE; + $$->const_int = g_utf8_get_char(yytext + 1); } | FLOATING { |