diff options
Diffstat (limited to 'gcc/c-parse.y')
| -rw-r--r-- | gcc/c-parse.y | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/c-parse.y b/gcc/c-parse.y index 4e170ec..44fe723 100644 --- a/gcc/c-parse.y +++ b/gcc/c-parse.y @@ -154,7 +154,7 @@ const char * const language_string = "GNU C"; %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 @@ -173,8 +173,6 @@ const char * const language_string = "GNU C"; %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 @@ -206,9 +204,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) |
