diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-21 18:31:11 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-21 18:31:11 +0000 |
commit | cdbcbc860dad65868fded903f99ddbb5dbb0efff (patch) | |
tree | e8d2fac222391ab2a5e2c3d58a9c6c1716323440 /gcc/c-parse.in | |
parent | 9a0208c9f81fd61ac80f0559a807772f4eafe821 (diff) | |
download | gcc-cdbcbc860dad65868fded903f99ddbb5dbb0efff.tar.gz |
* c-parse.in (SAVE_WARN_FLAGS): Save warn_traditional.
(RESTORE_WARN_FLAGS): Restore it.
(extension): Zero warn_traditional.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48247 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-parse.in')
-rw-r--r-- | gcc/c-parse.in | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/gcc/c-parse.in b/gcc/c-parse.in index 5132b3f1d6b..889425e26c2 100644 --- a/gcc/c-parse.in +++ b/gcc/c-parse.in @@ -261,13 +261,17 @@ static tree declspec_stack; /* For __extension__, save/restore the warning flags which are controlled by __extension__. */ -#define SAVE_WARN_FLAGS() \ - size_int (pedantic | (warn_pointer_arith << 1)) -#define RESTORE_WARN_FLAGS(tval) \ - do { \ - int val = tree_low_cst (tval, 0); \ - pedantic = val & 1; \ - warn_pointer_arith = (val >> 1) & 1; \ +#define SAVE_WARN_FLAGS() \ + size_int (pedantic \ + | (warn_pointer_arith << 1) \ + | (warn_traditional << 2)) + +#define RESTORE_WARN_FLAGS(tval) \ + do { \ + int val = tree_low_cst (tval, 0); \ + pedantic = val & 1; \ + warn_pointer_arith = (val >> 1) & 1; \ + warn_traditional = (val >> 2) & 1; \ } while (0) ifobjc @@ -2620,7 +2624,8 @@ extension: EXTENSION { $$ = SAVE_WARN_FLAGS(); pedantic = 0; - warn_pointer_arith = 0; } + warn_pointer_arith = 0; + warn_traditional = 0; } ; ifobjc |