diff options
author | dodji <dodji@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-04-30 11:43:29 +0000 |
---|---|---|
committer | dodji <dodji@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-04-30 11:43:29 +0000 |
commit | 053213c19e93889b0075ff1a4f586f11a3fb59da (patch) | |
tree | dfd182e7835b11147797ec58659bd0cdb81e372b /gcc/testsuite/objc.dg | |
parent | d98fd4a471919b0ce96c3424b1ef398c8b242a18 (diff) | |
download | gcc-053213c19e93889b0075ff1a4f586f11a3fb59da.tar.gz |
Adjust relevant test cases wrt -ftrack-macro-expansion=[0|2]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186976 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/objc.dg')
-rw-r--r-- | gcc/testsuite/objc.dg/foreach-7.m | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/testsuite/objc.dg/foreach-7.m b/gcc/testsuite/objc.dg/foreach-7.m index c56521172df..a82869223b1 100644 --- a/gcc/testsuite/objc.dg/foreach-7.m +++ b/gcc/testsuite/objc.dg/foreach-7.m @@ -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" } */ ; |