re PR middle-end/87854 (gcc.c-torture/compile/pr46534.c ICE for 16-bit size_t)
authorJozef Lawrynowicz <jozef.l@mittosystems.com>
Sat, 17 Nov 2018 00:45:43 +0000 (00:45 +0000)
committerJozef Lawrynowicz <jozefl@gcc.gnu.org>
Sat, 17 Nov 2018 00:45:43 +0000 (00:45 +0000)
2018-11-17  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

PR middle-end/87854
* g++.dg/parse/concat1.C: Add dg-error for targets with size_t < 32
bits. Update comment.
* gcc.dg/concat2.c: Likewise.
* gcc.c-torture/compile/pr46534.c: Likewise.

From-SVN: r266230

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/parse/concat1.C
gcc/testsuite/gcc.c-torture/compile/pr46534.c
gcc/testsuite/gcc.dg/concat2.c

index c879a8b..d0a237b 100644 (file)
@@ -1,3 +1,11 @@
+2018-11-17  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
+
+       PR middle-end/87854
+       * g++.dg/parse/concat1.C: Add dg-error for targets with size_t < 32
+       bits. Update comment.
+       * gcc.dg/concat2.c: Likewise.
+       * gcc.c-torture/compile/pr46534.c: Likewise.
+
 2018-11-16  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/87269
index 7bf97a6..7d19a7d 100644 (file)
@@ -1,11 +1,9 @@
 /* PR c/3581 */
 /* { dg-do compile } */
 
-/* Intended as a compile-time test for string literal concatenation.
-   The fact that the string isn't actually used in the resulting program
-   should allow this to compile for any target.  */
+/* Intended as a compile-time test for string literal concatenation.  */
 
-#define e0     "a"
+#define e0     "a"    /* { dg-error "size of string literal is too large" "" { target { ! size32plus } } } */
 #define e1     e0 e0 e0 e0 e0 e0 e0 e0 e0 e0
 #define e2     e1 e1 e1 e1 e1 e1 e1 e1 e1 e1
 #define e3     e2 e2 e2 e2 e2 e2 e2 e2 e2 e2
index 885aa6d..1894636 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-skip-if "too big" { avr-*-* nvptx-*-* pdp11-*-* } } */
+/* { dg-skip-if "too big" { nvptx-*-* } } */
 /* PR middle-end/46534 */
 
 extern int printf (const char *, ...);
@@ -14,5 +14,5 @@ extern int printf (const char *, ...);
 void
 foo (void)
 {
-  printf (S7 "\n");
+  printf (S7 "\n");  /* { dg-error "size of string literal is too large" "" { target { ! size32plus } } } */
 }
index 1e92400..e9fa216 100644 (file)
@@ -2,9 +2,7 @@
 /* { dg-do compile } */
 /* { dg-options "" } */
 
-/* Intended as a compile-time test for string literal concatenation.
-   The fact that the string isn't actually used in the resulting program
-   should allow this to compile for any target.  */
+/* Intended as a compile-time test for string literal concatenation.  */
 
 #define e0     "a"
 #define e1     e0 e0 e0 e0 e0 e0 e0 e0 e0 e0
@@ -13,4 +11,4 @@
 #define e4     e3 e3 e3 e3 e3 e3 e3 e3 e3 e3
 #define e5     e4 e4 e4 e4 e4 e4 e4 e4 e4 e4
 
-void foo() { (void)(e5); }
+void foo() { (void)(e5); }  /* { dg-error "size of string literal is too large" "" { target { ! size32plus } } } */