testsuite: Fix recently added ipa testcases [PR93763]
authorJakub Jelinek <jakub@redhat.com>
Tue, 25 Feb 2020 08:05:57 +0000 (09:05 +0100)
committerJakub Jelinek <jakub@redhat.com>
Tue, 25 Feb 2020 08:05:57 +0000 (09:05 +0100)
Seems the test has been badly reduced (if the original doesn't emit
warnings, it is always better in the reduction script avoid introducing new
ones).
Also, the g++.dg/ipa/ test fails with -std=c++98 because it is written in
C++11.

2020-02-25  Jakub Jelinek  <jakub@redhat.com>

PR ipa/93763
* gcc.dg/ipa/pr93763.c: Adjust the test so that it compiles without
warnings and still ICEs before the ipa-cp.c fix.
* g++.dg/ipa/pr93763.C: Require c++11 effective target.

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ipa/pr93763.C
gcc/testsuite/gcc.dg/ipa/pr93763.c

index fca49c36c194349426a1a5bc6aefd4ecd6277266..153e4ee10e772fcdb9e5a26dbabc5db911b86503 100644 (file)
@@ -1,5 +1,10 @@
 2020-02-25  Jakub Jelinek  <jakub@redhat.com>
 
+       PR ipa/93763
+       * gcc.dg/ipa/pr93763.c: Adjust the test so that it compiles without
+       warnings and still ICEs before the ipa-cp.c fix.
+       * g++.dg/ipa/pr93763.C: Require c++11 effective target.
+
        PR translation/93864
        * objc.dg/encode-2.m: Fix comment typo paramter -> parameter.
        * obj-c++.dg/encode-4.mm: Likewise.
index 61117108ecd610e2f86f386f2291448ed46f3bef..13ab2d57f603500e4a94b786ba9da338cbfaae5f 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-do compile } */
+/* { dg-do compile { target c++11 } } */
 /* { dg-options "-O3" } */
 
 struct search_param {
index d11705932b6ae58b34632680b165f73525264f4c..aa2e60c5fc70a6299c485d2dc3d812a719f69efb 100644 (file)
@@ -3,44 +3,48 @@
 
 typedef struct a a;
 struct a {
-  a *b
+  a *b;
 } d;
-e, k, ah, al;
-f(aa) {
+int e, k, ah, al;
+void h(void);
+void
+f(aa) int aa; {
   if (aa & 1)
     goto g;
   f(aa | 2);
 g:
   h();
 }
+void i();
+void
 l() {
-  {
     f(072);
     i(e, d, 92);
-  }
 }
+void
 ag() {
-  { i(e, d, 36); }
+  i(e, d, 36);
 }
+void j();
+void
 ai(a *m, a *n, unsigned aa) {
   f(aa);
   j(k, l, ah, 1);
 }
+void
 j(int c, a m, int aj, int aa) {
   int ak = aa;
-  { i(e, d, ak); }
+  i(e, d, ak);
 }
+void
 i(int c, a *m, unsigned aa) {
-  {
-    {             i(c, (*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(
+  i(c, (*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(
 *(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(
 *(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*(*m).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b)
 .b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b)
 .b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b)
 .b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b)
 .b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b).b, 0);
-    }
-  }
   int am = aa;
-  ai(ag, al, am);
+  ai((a *) (void *) ag, (a *) (__INTPTR_TYPE__) al, am);
 }