+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
/* 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
-/* { dg-skip-if "too big" { avr-*-* nvptx-*-* pdp11-*-* } } */
+/* { dg-skip-if "too big" { nvptx-*-* } } */
/* PR middle-end/46534 */
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 } } } */
}
/* { 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
#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 } } } */