re PR testsuite/36057 (struct-layout-1_generate.c uses non-ISO C '%n$' operand...
authorUros Bizjak <ubizjak@gmail.com>
Tue, 20 May 2008 19:01:46 +0000 (21:01 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Tue, 20 May 2008 19:01:46 +0000 (21:01 +0200)
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

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c

index e712f051739af5d2d086b231778f34f9ef02fcaf..fae968728a57a173ce0729e79faaaf475312f63f 100644 (file)
@@ -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>
 
index 0bb70eacc6d713fd7c03026431b0422684b23c7a..e6f4cb969edcd107751452e7157865713b469d41 100644 (file)
@@ -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");