diff options
author | Martin v. Löwis <loewis@informatik.hu-berlin.de> | 2000-01-18 00:01:06 +0000 |
---|---|---|
committer | Martin v. Löwis <loewis@gcc.gnu.org> | 2000-01-18 00:01:06 +0000 |
commit | 101e59f49237c5acbf25580d8f7f2f16b0e10f9c (patch) | |
tree | 9efb26d31ac8ff1aa8734ad2c269ff7117ddf3eb /gcc/c-parse.in | |
parent | 18990de52b8166a8f5fb71271cf4c12d3c0f0a47 (diff) | |
download | gcc-101e59f49237c5acbf25580d8f7f2f16b0e10f9c.zip gcc-101e59f49237c5acbf25580d8f7f2f16b0e10f9c.tar.gz gcc-101e59f49237c5acbf25580d8f7f2f16b0e10f9c.tar.bz2 |
c-parse.in (SAVE_WARN_FLAGS): Create an INTEGER_CST.
* c-parse.in (SAVE_WARN_FLAGS): Create an INTEGER_CST.
(RESTORE_WARN_FLAGS): Unpack it.
Change semantic type of extension to ttype.
* c-common.c (split_specs_attrs): Expect an INTEGER_CST.
* c-parse.y, c-parse.c, objc/objc-parse.y,
objc/objc-parse.c: Regenerate.
From-SVN: r31478
Diffstat (limited to 'gcc/c-parse.in')
-rw-r--r-- | gcc/c-parse.in | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/c-parse.in b/gcc/c-parse.in index f3ee7e5..80ed5c3 100644 --- a/gcc/c-parse.in +++ b/gcc/c-parse.in @@ -166,7 +166,7 @@ end ifc %type <ttype> init maybeasm %type <ttype> asm_operands nonnull_asm_operands asm_operand asm_clobbers %type <ttype> maybe_attribute attributes attribute attribute_list attrib -%type <ttype> any_word +%type <ttype> any_word extension %type <ttype> compstmt compstmt_nostart compstmt_primary_start @@ -185,8 +185,6 @@ end ifc %type <ttype> parmlist_or_identifiers parmlist_or_identifiers_1 %type <ttype> identifiers_or_typenames -%type <itype> extension - %type <itype> setspecs %type <ends_in_label> lineno_stmt_or_label lineno_stmt_or_labels stmt_or_label @@ -231,9 +229,11 @@ static int undeclared_variable_notice; /* For __extension__, save/restore the warning flags which are controlled by __extension__. */ -#define SAVE_WARN_FLAGS() (pedantic | (warn_pointer_arith << 1)) -#define RESTORE_WARN_FLAGS(val) \ +#define SAVE_WARN_FLAGS() \ + build_int_2 (pedantic | (warn_pointer_arith << 1), 0) +#define RESTORE_WARN_FLAGS(tval) \ do { \ + int val = TREE_INT_CST_LOW (tval); \ pedantic = val & 1; \ warn_pointer_arith = (val >> 1) & 1; \ } while (0) |