aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2008-05-20 21:01:46 +0200
committerUros Bizjak <uros@gcc.gnu.org>2008-05-20 21:01:46 +0200
commit5f620f482ec35b18c419368a8cae2218bd4cacf5 (patch)
treeb3c516308bd4f77fcbdd9baa1ea8c5bcb950538e
parent5fb0445da6a641f2723de1fda82bbc31040dd25b (diff)
downloadgcc-5f620f482ec35b18c419368a8cae2218bd4cacf5.zip
gcc-5f620f482ec35b18c419368a8cae2218bd4cacf5.tar.gz
gcc-5f620f482ec35b18c419368a8cae2218bd4cacf5.tar.bz2
re PR testsuite/36057 (struct-layout-1_generate.c uses non-ISO C '%n$' operand number formats)
PR testsuite/36057 * g++.dg/compat/struct-layout-1_generate.c (DG_OPTIONS): Remove. (const char *dg_options): New array. (switchfiles): Loop through dg_options array to generate dg-options directives. Remove numbered arguments usage from fprintf format strings. From-SVN: r135671
-rw-r--r--gcc/testsuite/ChangeLog9
-rw-r--r--gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c41
2 files changed, 34 insertions, 16 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index e712f05..fae9687 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,12 @@
+2008-05-20 Uros Bizjak <ubizjak@gmail.com>
+
+ PR testsuite/36057
+ * g++.dg/compat/struct-layout-1_generate.c (DG_OPTIONS): Remove.
+ (const char *dg_options): New array.
+ (switchfiles): Loop through dg_options array to generate dg-options
+ directives. Remove numbered arguments usage from fprintf
+ format strings.
+
2008-05-20 Jan Sjodin <jan.sjodin@amd.com>
Sebastian Pop <sebastian.pop@amd.com>
diff --git a/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c b/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c
index 0bb70ea..e6f4cb9 100644
--- a/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c
+++ b/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c
@@ -42,12 +42,13 @@ along with GCC; see the file COPYING3. If not see
#define COMPAT_PRLL "ll"
#endif
-#define DG_OPTIONS "\
-/* { dg-options \"%1$s-I%2$s\" } */\n\
-/* { dg-options \"%1$s-I%2$s -mno-mmx\" { target i?86-*-* x86_64-*-* } } */\n\
-/* { dg-options \"%1$s-I%2$s -fno-common\" { target hppa*-*-hpux* } } */\n\
-/* { dg-options \"%1$s-I%2$s -mno-base-addresses\" { target mmix-*-* } } */\n\
-\n"
+const char *dg_options[] = {
+"/* { dg-options \"%s-I%s\" } */\n",
+"/* { dg-options \"%s-I%s -mno-mmx\" { target i?86-*-* x86_64-*-* } } */\n",
+"/* { dg-options \"%s-I%s -fno-common\" { target hppa*-*-hpux* } } */\n",
+"/* { dg-options \"%s-I%s -mno-base-addresses\" { target mmix-*-* } } */\n"
+#define NDG_OPTIONS (sizeof (dg_options) / sizeof (dg_options[0]))
+};
typedef unsigned int hashval_t;
@@ -501,6 +502,8 @@ switchfiles (int fields)
{
static int filecnt;
static char *destbuf, *destptr;
+ int i;
+
++filecnt;
if (outfile)
fclose (outfile);
@@ -528,17 +531,19 @@ switchfiles (int fields)
fputs ("failed to create test files\n", stderr);
exit (1);
}
- fprintf (outfile, DG_OPTIONS "\
+ for (i = 0; i < NDG_OPTIONS; i++)
+ fprintf (outfile, dg_options[i], "", srcdir);
+ fprintf (outfile, "\n\
#include \"struct-layout-1.h\"\n\
\n\
#define TX(n, type, attrs, fields, ops) extern void test##n (void);\n\
-#include \"t%3$03d_test.h\"\n\
+#include \"t%03d_test.h\"\n\
#undef TX\n\
\n\
int main (void)\n\
{\n\
#define TX(n, type, attrs, fields, ops) test##n ();\n\
-#include \"t%3$03d_test.h\"\n\
+#include \"t%03d_test.h\"\n\
#undef TX\n\
if (fails)\n\
{\n\
@@ -546,27 +551,31 @@ int main (void)\n\
abort ();\n\
}\n\
exit (0);\n\
-}\n", "", srcdir, filecnt);
+}\n", filecnt, filecnt);
fclose (outfile);
sprintf (destptr, "t%03d_x.C", filecnt);
outfile = fopen (destbuf, "w");
if (outfile == NULL)
goto fail;
- fprintf (outfile, DG_OPTIONS "\
+ for (i = 0; i < NDG_OPTIONS; i++)
+ fprintf (outfile, dg_options[i], "-w ", srcdir);
+ fprintf (outfile, "\n\
#include \"struct-layout-1_x1.h\"\n\
-#include \"t%3$03d_test.h\"\n\
+#include \"t%03d_test.h\"\n\
#include \"struct-layout-1_x2.h\"\n\
-#include \"t%3$03d_test.h\"\n", "-w ", srcdir, filecnt);
+#include \"t%03d_test.h\"\n", filecnt, filecnt);
fclose (outfile);
sprintf (destptr, "t%03d_y.C", filecnt);
outfile = fopen (destbuf, "w");
if (outfile == NULL)
goto fail;
- fprintf (outfile, DG_OPTIONS "\
+ for (i = 0; i < NDG_OPTIONS; i++)
+ fprintf (outfile, dg_options[i], "-w ", srcdir);
+ fprintf (outfile, "\n\
#include \"struct-layout-1_y1.h\"\n\
-#include \"t%3$03d_test.h\"\n\
+#include \"t%03d_test.h\"\n\
#include \"struct-layout-1_y2.h\"\n\
-#include \"t%3$03d_test.h\"\n", "-w ", srcdir, filecnt);
+#include \"t%03d_test.h\"\n", filecnt, filecnt);
fclose (outfile);
sprintf (destptr, "t%03d_test.h", filecnt);
outfile = fopen (destbuf, "w");