Adjust relevant test cases wrt -ftrack-macro-expansion=[0|2]
authorDodji Seketeli <dodji@redhat.com>
Mon, 30 Apr 2012 11:43:29 +0000 (11:43 +0000)
committerDodji Seketeli <dodji@gcc.gnu.org>
Mon, 30 Apr 2012 11:43:29 +0000 (13:43 +0200)
Even after all the patches I have already submitted, some test cases
where errors happens on tokens that are defined in macros see their
output change in an incompatible way, when you run them with or
without -ftrack-macro-expansion.

I think this is expected, because the (spelling) locus inside the
definition of the macro pointed to with -ftrack-macro-expansion is
different from the locus of the expansion point of the macro pointed
to without -ftrack-macro-expansion.

In those cases this patch either adjusts the test case and forces it
be run either with -ftrack-macro-expansion, or it just forces it to be
run without -ftrack-macro-expansion.

There are so many libstdc++ tests that were failing because of that
benign issue that I preferred to just run them with
-ftrack-macro-expansion diabled, after inspecting each of them to be
sure there was nothing more serious underneath.

Boostrapped on x86_64-unknown-linux-gnu against trunk with and without
-ftrack-macro-expansion turned on.

gcc/testsuite/

* objc.dg/foreach-7.m: Force the test case to run without
-ftrack-macro-expansion.
* c-c++-common/tm/attrib-1.c: Likewise.
* c-c++-common/warn-ommitted-condop.c: Likewise.
* gcc.dg/assign-warn-1.c: Likewise.
* gcc.dg/assign-warn-2.c: Likewise.
* gcc.dg/attr-alloc_size.c: Likewise.
* gcc.dg/builtin-stringop-chk-1.c: Likewise.
* gcc.dg/builtin-stringop-chk-2.c: Likewise.
* gcc.dg/builtin-strncat-chk-1.c: Likewise.
* gcc.dg/c90-const-expr-9.c: Likewise.
* gcc.dg/c99-const-expr-9.c: Likewise.
* gcc.dg/cpp/direct2.c: Likewise.  Adjust.
* gcc.dg/cpp/direct2s.c: Likewise.
* gcc/testsuite/gcc.dg/cpp/pr28709.c: Likewise.
* gcc.dg/cpp/pragma-diagnostic-1.c: Likewise.
* gcc.dg/dfp/composite-type.c: Likewise.
* gcc.dg/uninit-6-O0.c: Adjust the test case and force it to run
with -ftrack-macro-expansion
* g++.dg/cpp0x/constexpr-ex3.C: Likewise.
* g++.dg/cpp0x/constexpr-overflow.C: Likewise.
* g++.dg/ext/cleanup-1.C: Likewise.
* g++.dg/ext/gnu-inline-global-reject.C: Likewise.
* g++.dg/template/sfinae10.C: Likewise.
* g++.dg/tm/wrap-2.C: Likewise.
* g++.dg/warn/Wconversion-real-integer.C: Likewise.
* g++.dg/warn/Wsign-conversion.C: Likewise.
* g++.dg/warn/multiple-overflow-warn-1.C: Likewise.
* g++.old-deja/g++.mike/p10769b.C: Likewise.
* g++.dg/warn/Wdouble-promotion.C: Adjust the test case and force
it to run with -ftrack-macro-expansion.
* libstdc++-v3/scripts/testsuite_flags.in: By default, run the
test cases without -ftrack-macro-expansion.

From-SVN: r186976

30 files changed:
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/tm/attrib-1.c
gcc/testsuite/c-c++-common/warn-ommitted-condop.c
gcc/testsuite/g++.dg/cpp0x/constexpr-ex3.C
gcc/testsuite/g++.dg/cpp0x/constexpr-overflow.C
gcc/testsuite/g++.dg/ext/cleanup-1.C
gcc/testsuite/g++.dg/ext/gnu-inline-global-reject.C
gcc/testsuite/g++.dg/template/sfinae10.C
gcc/testsuite/g++.dg/tm/wrap-2.C
gcc/testsuite/g++.dg/warn/Wconversion-real-integer.C
gcc/testsuite/g++.dg/warn/Wdouble-promotion.C
gcc/testsuite/g++.dg/warn/Wsign-conversion.C
gcc/testsuite/g++.dg/warn/multiple-overflow-warn-1.C
gcc/testsuite/g++.old-deja/g++.mike/p10769b.C
gcc/testsuite/gcc.dg/assign-warn-1.c
gcc/testsuite/gcc.dg/assign-warn-2.c
gcc/testsuite/gcc.dg/attr-alloc_size.c
gcc/testsuite/gcc.dg/builtin-stringop-chk-1.c
gcc/testsuite/gcc.dg/builtin-stringop-chk-2.c
gcc/testsuite/gcc.dg/builtin-strncat-chk-1.c
gcc/testsuite/gcc.dg/c90-const-expr-9.c
gcc/testsuite/gcc.dg/c99-const-expr-9.c
gcc/testsuite/gcc.dg/cpp/direct2.c
gcc/testsuite/gcc.dg/cpp/direct2s.c
gcc/testsuite/gcc.dg/cpp/pr28709.c
gcc/testsuite/gcc.dg/cpp/pragma-diagnostic-1.c
gcc/testsuite/gcc.dg/dfp/composite-type.c
gcc/testsuite/gcc.dg/uninit-6-O0.c
gcc/testsuite/objc.dg/foreach-7.m
libstdc++-v3/scripts/testsuite_flags.in

index 06f18f0c5827f318406507f7bb1cdb5947964e55..000d0a865f477248f0d409add2e99beadfd9d81f 100644 (file)
@@ -1,5 +1,40 @@
 2012-04-30  Dodji Seketeli  <dodji@redhat.com>
 
+       Adjust relevant test cases wrt -ftrack-macro-expansion=[0|2]
+       * objc.dg/foreach-7.m: Force the test case to run without
+       -ftrack-macro-expansion.
+       * c-c++-common/tm/attrib-1.c: Likewise.
+       * c-c++-common/warn-ommitted-condop.c: Likewise.
+       * gcc.dg/assign-warn-1.c: Likewise.
+       * gcc.dg/assign-warn-2.c: Likewise.
+       * gcc.dg/attr-alloc_size.c: Likewise.
+       * gcc.dg/builtin-stringop-chk-1.c: Likewise.
+       * gcc.dg/builtin-stringop-chk-2.c: Likewise.
+       * gcc.dg/builtin-strncat-chk-1.c: Likewise.
+       * gcc.dg/c90-const-expr-9.c: Likewise.
+       * gcc.dg/c99-const-expr-9.c: Likewise.
+       * gcc.dg/cpp/direct2.c: Likewise.  Adjust.
+       * gcc.dg/cpp/direct2s.c: Likewise.
+       * gcc/testsuite/gcc.dg/cpp/pr28709.c: Likewise.
+       * gcc.dg/cpp/pragma-diagnostic-1.c: Likewise.
+       * gcc.dg/dfp/composite-type.c: Likewise.
+       * gcc.dg/uninit-6-O0.c: Adjust the test case and force it to run
+       with -ftrack-macro-expansion
+       * g++.dg/cpp0x/constexpr-ex3.C: Likewise.
+       * g++.dg/cpp0x/constexpr-overflow.C: Likewise.
+       * g++.dg/ext/cleanup-1.C: Likewise.
+       * g++.dg/ext/gnu-inline-global-reject.C: Likewise.
+       * g++.dg/template/sfinae10.C: Likewise.
+       * g++.dg/tm/wrap-2.C: Likewise.
+       * g++.dg/warn/Wconversion-real-integer.C: Likewise.
+       * g++.dg/warn/Wsign-conversion.C: Likewise.
+       * g++.dg/warn/multiple-overflow-warn-1.C: Likewise.
+       * g++.old-deja/g++.mike/p10769b.C: Likewise.
+       * g++.dg/warn/Wdouble-promotion.C: Adjust the test case and force
+       it to run with -ftrack-macro-expansion.
+       * libstdc++-v3/scripts/testsuite_flags.in: By default, run the
+       test cases without -ftrack-macro-expansion.
+
        Fix location for static class members
        * g++.dg/template/sfinae6_neg.C: Adjust.
 
index 536aeb33fdd8d02388eee1c79a7bf6d36b652f9e..534fa0e9ea495db8ef95c79a9517cd260500b4a5 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-fgnu-tm" } */
+/* { dg-options "-fgnu-tm -ftrack-macro-expansion=0" } */
 
 #define TC     __attribute__((transaction_callable))
 #define TU     __attribute__((transaction_unsafe))
index de92b8f2cdc9622f316162e70f0df9634f0c1a4e..0726f043916008d159ad960c6272b34884c5fbad 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-options "-Wparentheses" } */
+/* { dg-options "-Wparentheses -ftrack-macro-expansion=0" } */
 
 extern void f2 (int);
 
index 08552cd7de73c83ba719cac774abe6f7b31fa2ad..5c0b1e21cb7d04659e8ad992dc4e717d0a237daf 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x" }
+// { dg-options "-std=c++0x -ftrack-macro-expansion=0" }
 
 #define SA(X) static_assert (X, #X)
 
index 9b3b1fa0ea564e1dce971f2007e4f7a75e217c47..3eb27aa0a88bbffd3647d9aa7d87ed24090ef0bd 100644 (file)
@@ -1,4 +1,4 @@
-// { dg-options "-std=c++0x -w" }
+// { dg-options "-std=c++0x -w -ftrack-macro-expansion=0" }
 
 #include <limits.h>
 extern constexpr int max_s = INT_MAX + 1;  // { dg-error "" }
index 8e8353754955a08e1fabec72d368355260931f10..7cf14c9981249cf57dce429186976328707a7b26 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-Wall" } */
+/* { dg-options "-Wall -ftrack-macro-expansion=0" } */
 /* Validate expected warnings and errors.  */
 
 #define U      __attribute__((unused))
index d9e26609550e8da5e485804d775c75489a703050..fc7385d809a745d63a9a5f5b98e950aef8684556 100644 (file)
@@ -4,7 +4,7 @@
 */
 
 /* { dg-do compile } */
-/* { dg-options " -ansi -Wno-long-long" } */
+/* { dg-options " -ansi -Wno-long-long -ftrack-macro-expansion=0" } */
 
 #include "gnu-inline-common.h"
 
index c6cb12f30123ea884744cd6ae1881d2e20ef1ddf..3b1d26bea8c1562d70bb605cb8e015d2f62b740c 100644 (file)
@@ -1,7 +1,7 @@
 // DR 339
 //
 // Test of the use of various unary operators with SFINAE
-
+// { dg-options "-fmessage-length=0 -pedantic-errors -Wno-long-long -ftrack-macro-expansion=0 " }
 // Boilerplate helpers
 typedef char yes_type;
 struct no_type { char data[2]; };
index 564fbf87e1b478c727273fe1942c0c0b501087d5..e2948c8c575ff348e8333d2dbafae55c7e4c9e76 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-fgnu-tm" } */
+/* { dg-options "-fgnu-tm -ftrack-macro-expansion=0" } */
 
 #define W(X)   __attribute__((transaction_wrap(X)))
 void f1(void);
index 282ac13da582d835b78888aaeeb8c85733fd6f80..3b6d1f3c437c0af837f7906c1f11e3e05c71fd19 100644 (file)
@@ -3,7 +3,7 @@
    gcc/testsuite/gcc.dg/Wconversion-real-integer.c */
 
 /* { dg-do compile }
-/* { dg-options "-Wconversion" } */
+/* { dg-options "-Wconversion -ftrack-macro-expansion=0" } */
 /* { dg-require-effective-target int32plus } */
 #include <limits.h>
 
index 9b4044f77f62695f2cc17513817cedc4f3f0d030..98d2eeda79e773cb6cb115b598051f59791d8a20 100644 (file)
@@ -1,11 +1,11 @@
 /* { dg-do compile } */
-/* { dg-options "-Wdouble-promotion" } */
+/* { dg-options "-Wdouble-promotion -ftrack-macro-expansion=2" } */
 
 #include <stddef.h>
 
 /* Some targets do not provide <complex.h> so we define I ourselves.  */
 #define I 1.0iF
-#define ID ((_Complex double)I)
+#define ID ((_Complex double)I) // { dg-warning "implicit" }
 
 float f;
 double d;
@@ -36,7 +36,7 @@ usual_arithmetic_conversions(void)
 
   local_cf = cf + 1.0;       /* { dg-warning "implicit" } */
   local_cf = cf - d;         /* { dg-warning "implicit" } */
-  local_cf = cf + 1.0 * ID;  /* { dg-warning "implicit" } */
+  local_cf = cf + 1.0 * ID;  /* { dg-message "expanded from here" } */
   local_cf = cf - cd;        /* { dg-warning "implicit" } */
   
   local_f = i ? f : d;       /* { dg-warning "implicit" } */
index 83fe2ed660b41c4a0a2fa09fa3da79508c3987a6..f6a0cccdffc8de6df0522041414bd0aa5e9517ae 100644 (file)
@@ -3,7 +3,7 @@
    C++ equivalent of gcc/testsuite/gcc.dg/Wsign-conversion.c  */
 
 // { dg-do compile } 
-// { dg-options "-fsigned-char -Wsign-conversion" } 
+// { dg-options "-fsigned-char -Wsign-conversion -ftrack-macro-expansion=0" } 
 #include <limits.h>
 
 void fsc (signed char sc);
index 489930211e4224ac735a1d753161775a033e7a77..c941c1333215a1cd16e26d61488572ccdb21a272 100644 (file)
@@ -1,6 +1,6 @@
 /* PR c/19978 : Test for duplicated warnings (unary operators).  */
 /* { dg-do compile } */
-/* { dg-options "-Woverflow" } */
+/* { dg-options "-Woverflow -ftrack-macro-expansion=0" } */
 
 #include <limits.h>
 
index 9210a452ad6f7acece67cac1a89c96eeaee3c2fe..9c2dd297111f83e068a59a0b2b83135fdc308e41 100644 (file)
@@ -1,5 +1,5 @@
 // { dg-do assemble  }
-// { dg-options "" }
+// { dg-options "-ftrack-macro-expansion=0" }
 // prms-id: 10769
 
 #define PMF2PF(PMF) ((void (*)())(PMF))
index ae70242edd4dceafef820c7fa53ccc7724fcbfa0..f26a5447ea0cd56540cc6ecc0d11df05906d0d65 100644 (file)
@@ -1,7 +1,7 @@
 /* Test diagnostics for bad implicit type conversions.  */
 /* Origin: Joseph Myers <jsm@polyomino.org.uk> */
 /* { dg-do compile } */
-/* { dg-options "-pedantic" } */
+/* { dg-options "-pedantic -ftrack-macro-expansion=0" } */
 
 #define TESTARG(ID, TL, TR) void ID##F(TL); void ID##F2(TR x) { ID##F(x); } extern int dummy
 #define TESTARP(ID, TL, TR) struct { void (*x)(TL); } ID##Fp; void ID##F2(TR x) { ID##Fp.x(x); } extern int dummy
index 7813b72869dccb237d48f7a387024da779e6abcf..1e5eb1ca6e59d6562271c3dd4e7c69d65afa535b 100644 (file)
@@ -2,7 +2,7 @@
    -pedantic-errors test.  */
 /* Origin: Joseph Myers <jsm@polyomino.org.uk> */
 /* { dg-do compile } */
-/* { dg-options "-pedantic-errors" } */
+/* { dg-options "-pedantic-errors -ftrack-macro-expansion=0" } */
 
 #define TESTARG(ID, TL, TR) void ID##F(TL); void ID##F2(TR x) { ID##F(x); } extern int dummy
 #define TESTARP(ID, TL, TR) struct { void (*x)(TL); } ID##Fp; void ID##F2(TR x) { ID##Fp.x(x); } extern int dummy
index 47d7c0050853fd377d588be96db232a5a2ecfc36..e8129ceae961c6d25468471ab295aaecef31f44d 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -Wall" } */
+/* { dg-options "-O2 -Wall -ftrack-macro-expansion=0" } */
 
 extern void abort (void);
 
index e9fb7db52191745fd7736afe583ef79b844c717c..beecab652e362acefed5276e7062c83acbf93231 100644 (file)
@@ -1,7 +1,7 @@
 /* Test whether buffer overflow warnings for __*_chk builtins
    are emitted properly.  */
 /* { dg-do compile } */
-/* { dg-options "-O2 -std=gnu99" } */
+/* { dg-options "-O2 -std=gnu99 -ftrack-macro-expansion=0" } */
 /* { dg-options "-mstructure-size-boundary=8 -O2 -std=gnu99" { target arm*-*-* } } */
 
 extern void abort (void);
index adccd0f444d553f08d8995c003928f4f02d2248a..7c2bb60981643e9d7cffac240a92ce3ade5122d7 100644 (file)
@@ -3,7 +3,7 @@
    incorrectly determined to be 0 while it should be (size_t) -1
    (== unknown).  */
 /* { dg-do compile } */
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -ftrack-macro-expansion=0" } */
 
 #include "../gcc.c-torture/execute/builtins/chk.h"
    
index 80d7b9d6ebf55e2cc32e1fbb7234bdcee27d2293..44677f16778257bec02bdf1c9f6494c7481a31bd 100644 (file)
@@ -1,7 +1,7 @@
 /* Test whether buffer overflow warnings for __strncat_chk builtin
    are emitted properly.  */
 /* { dg-do compile } */
-/* { dg-options "-O2 -std=gnu99" } */
+/* { dg-options "-O2 -std=gnu99 -ftrack-macro-expansion=0" } */
 
 extern void abort (void);
 
index 0d5d8c1ae003fe4e10f1c16ab93c23f1aeb5b5b1..4793a14b6c4e61f1beaf6b50f8d89c346629ebc6 100644 (file)
@@ -3,7 +3,7 @@
    expansion.  */
 /* Origin: Joseph Myers <joseph@codesourcery.com> */
 /* { dg-do compile } */
-/* { dg-options "-std=iso9899:1990 -pedantic-errors" } */
+/* { dg-options "-std=iso9899:1990 -pedantic-errors -ftrack-macro-expansion=0" } */
 
 struct s {
   int a;
index a0a6a9635c3a43bd45ff8a06079c94bc730ce9f3..11e0b2c08b31b4b2545ea186c6c6915f0919c393 100644 (file)
@@ -3,7 +3,7 @@
    expansion.  */
 /* Origin: Joseph Myers <joseph@codesourcery.com> */
 /* { dg-do compile } */
-/* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
+/* { dg-options "-std=iso9899:1999 -pedantic-errors -ftrack-macro-expansion=0" } */
 
 struct s {
   int a;
index 858dec7f31efe59afbef333f0c38840afc2075fa..1ce40bfb58fa5278ea1282bf39c37da7571191e0 100644 (file)
@@ -4,18 +4,20 @@
 /* Test of prohibition on directives which result from macro expansion.
    See also direct2s.c */
 
-/* { dg-do compile } */
+/* 
+   { dg-options "-ftrack-macro-expansion=0" }
+   { dg-do compile } */
 
 #define HASH #
 #define HASHDEFINE #define
 #define HASHINCLUDE #include
 
 HASH include "somerandomfile" /*{ dg-error "stray" "non-include" }*/
-/*{ dg-bogus "No such" "don't execute non-include" { target *-*-* } 13 }*/
-int resync_parser_1; /*{ dg-error "parse|syntax|expected" "" { target *-*-* } 13 }*/
+/*{ dg-bogus "No such" "don't execute non-include" { target *-*-* } 15 }*/
+int resync_parser_1; /*{ dg-error "parse|syntax|expected" "" { target *-*-* } 15 }*/
 
 HASHINCLUDE <somerandomfile> /*{ dg-error "stray|expected" "non-include 2" }*/
-/*{ dg-bogus "No such" "don't execute non-include 2" { target *-*-* } 17 }*/
+/*{ dg-bogus "No such" "don't execute non-include 2" { target *-*-* } 19 }*/
 int resync_parser_2;
 
 void g1 ()
@@ -43,4 +45,4 @@ void f ()
 #define starslash *##/
 
 slashstar starslash /* { dg-error "parse error|syntax error|expected" "not a comment" } */
-/* { dg-error "does not give" "paste warning(s)" { target *-*-* } 45 } */
+/* { dg-error "does not give" "paste warning(s)" { target *-*-* } 47 } */
index 9d0cc017df7200dcfc00c6ea45b57ea92f7dbc06..592321419443cd9963afa6c38a89e1624c88a0a7 100644 (file)
@@ -6,7 +6,7 @@
    should be identical.  */
 
 /* { dg-do compile } */
-/* { dg-options "-save-temps -ansi -pedantic-errors" } */
+/* { dg-options "-save-temps -ansi -pedantic-errors -ftrack-macro-expansion=0" } */
 
 #define HASH #
 #define HASHDEFINE #define
index 11cccbe8b5d33f4bfd970afbf8a7a601f81a8a91..cb1755a34abdc4cb1a221ce382269c5f83ba34a0 100644 (file)
@@ -1,8 +1,10 @@
 /* Copyright (C) 2006 Free Software Foundation, Inc.  */
 /* PR preprocessor/28709 */
 
-/* { dg-do compile } */
+/* { dg-options "-ftrack-macro-expansion=0" }
+   { dg-do compile } */
+
 #define foo - ## >>
 foo;
-/* { dg-error "expected identifier.*'-'" "" { target *-*-* } 6 } */
-/* { dg-error pasting "" { target *-*-* } 6 } */
+/* { dg-error "expected identifier.*'-'" "" { target *-*-* } 8 } */
+/* { dg-error pasting "" { target *-*-* } 8 } */
index 3a2f9da1fceda2c56d8cf6cdb9a8b0d40ce3f2af..add7360c5f8cba786b3763caf9621a37d236aefc 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  { dg-options "-Wuninitialized" }
+  { dg-options "-Wuninitialized -ftrack-macro-expansion=0" }
   { dg-do compile }
 */
 
index 69ecb1421c14ca8ef867f2722e1d28ef1599b382..6bf35f5c9417e0e42e65ecd639add84bab210357 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O -Wall" } */
+/* { dg-options "-O -Wall -ftrack-macro-expansion=0" } */
 
 /* C99 6.2.7: Compatible type and composite type.  */
 
index e3fefe5e1c5ac154fd3fe53a7a361dec2700e49d..fe9815efbb660a2c4efa6214b6b9568cc6af6b9a 100644 (file)
@@ -2,7 +2,7 @@
    This one inspired by java/class.c:build_utf8_ref.  */
 
 /* { dg-do compile } */
-/* { dg-options "-Wuninitialized" } */
+/* { dg-options "-Wuninitialized -ftrack-macro-expansion=2" } */
 
 #include <stddef.h>
 
@@ -24,7 +24,7 @@ do {                                                          \
      tmp->car = 0; tmp->cdr = 0; tmp->type = TYPE;             \
      tmp->data = VALUE;                                                \
      if (TREE->car)                                            \
-        LAST->cdr = tmp;                                       \
+        LAST->cdr = tmp;         /* { dg-bogus "field" "uninitialized variable warning" { xfail *-*-* } } */                           \
      else                                                      \
         TREE->car = tmp;                                       \
      LAST = tmp;                                               \
@@ -39,7 +39,7 @@ make_something(int a, int b, int c)
     rv = malloc (sizeof (struct tree));
     rv->car = 0;
 
-    APPEND(rv, field, INTEGER_T, a);  /* { dg-bogus "field" "uninitialized variable warning" { xfail *-*-* } } */
+    APPEND(rv, field, INTEGER_T, a);
     APPEND(rv, field, PTR_T, b);
     APPEND(rv, field, INTEGER_T, c);
 
index c56521172df74e28fea83d7771742e53ff58e65c..a82869223b174056fdff3504d902f57400aa3cac 100644 (file)
@@ -1,5 +1,8 @@
 /* Test basic Objective-C foreach syntax.  This tests warnings and errors.  */
-/* { dg-do compile } */
+/* 
+   { dg-options "-ftrack-macro-expansion=0" }
+   { dg-do compile } 
+*/
 
 #import "../objc-obj-c++-shared/TestsuiteObject.h"
 #import <objc/objc.h>
@@ -37,10 +40,10 @@ int main (void)
   id object = nil;
 
   for (typedef int my_typedef in array) /* { dg-error "declaration of non-variable" } */
-    ;                                   /* { dg-error "iterating variable in fast enumeration is not an object" "" { target *-*-* } 39 } */
+    ;                                   /* { dg-error "iterating variable in fast enumeration is not an object" "" { target *-*-* } 42 } */
 
   for (function () in nil) /* { dg-error "invalid iterating variable in fast enumeration" } */
-    ;                      /* { dg-error "iterating variable in fast enumeration is not an object" "" { target *-*-* } 42 } */
+    ;                      /* { dg-error "iterating variable in fast enumeration is not an object" "" { target *-*-* } 45 } */
 
   for (object_function () in nil) /* { dg-error "invalid iterating variable in fast enumeration" } */
     ;
index f77784bd7b93f5d76d58cb3b1ba2e53f39cbb71d..7b16bb1cbe5513a96582abf127566532d4da1be3 100755 (executable)
@@ -54,7 +54,7 @@ case ${query} in
       echo ${CC}
       ;;
     --cxxflags)
-      CXXFLAGS_default="-D_GLIBCXX_ASSERT -fmessage-length=0"
+      CXXFLAGS_default="-D_GLIBCXX_ASSERT -fmessage-length=0 -ftrack-macro-expansion=0"
       CXXFLAGS_config="@SECTION_FLAGS@ @CXXFLAGS@ @EXTRA_CXX_FLAGS@"
       echo ${CXXFLAGS_default} ${CXXFLAGS_config}
       ;;