OSDN Git Service

* c-parse.in (SAVE_WARN_FLAGS): Save warn_traditional.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 21 Dec 2001 18:31:11 +0000 (18:31 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 21 Dec 2001 18:31:11 +0000 (18:31 +0000)
        (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

gcc/ChangeLog
gcc/c-parse.in

index 037058b..739757b 100644 (file)
@@ -1,3 +1,9 @@
+2001-12-21  Richard Henderson  <rth@redhat.com>
+
+       * c-parse.in (SAVE_WARN_FLAGS): Save warn_traditional.
+       (RESTORE_WARN_FLAGS): Restore it.
+       (extension): Zero warn_traditional.
+
 2001-12-21  Kazu Hirata  <kazu@hxi.com>
 
        * doc/passes.texi: Fix a typo.
index 5132b3f..889425e 100644 (file)
@@ -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; }
        ;
 \f
 ifobjc