This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Comitted] Xfail some objc tests for powerpc-aix and powerpc-darwin


Since I don't have time for 4.2 to fix libobjc for these failures and
these failures are not a regression.  I am just going to xfail them for
powerpc*-*-darwin* and powerpc*-*-aix until I get some time to work on
libobjc not using the back-end's headers.  This bug is recorded as PR
25359 already.

Committed after a test on i686-linux-gnu to make sure I did not break
anything.

Thanks,
Andrew Pinski

testsuite/ChangeLog:

	* objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c:
	Xfail some tests for powerpc-darwin and powerpc-aix.
Index: objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c
===================================================================
--- objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c	(revision 117539)
+++ objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c	(working copy)
@@ -222,11 +222,29 @@ switchfiles (int fields)
       fputs ("failed to create test files\n", stderr);
       exit (1);
     }
+  /* FIXME: these tests should not be xfailed on PowerPC darwin or aix
+     but they are because libobjc uses GCC's headers for trying to find
+     the struct layout but it gets it wrong.  */
+  if (filecnt == 2
+      || filecnt == 3
+      || filecnt == 4
+      || filecnt == 6
+      || filecnt == 7
+      || filecnt == 8
+      || filecnt == 11
+      || filecnt == 12
+      || filecnt == 15
+      || filecnt == 22)
+     {
+      fprintf (outfile, "\
+/* { dg-do run { xfail powerpc*-*-darwin* powerpc*-*-aix* } } */\n\
+/* { dg-options \"-w -I%s -fgnu-runtime\" } */\n", srcdir);
+     }
   /* FIXME: these should not be xfailed but they are because
      of bugs in libobjc and the objc front-end.  25 is because
      vectors are not encoded.  The rest are because or zero sized
      arrays are encoded as pointers.  */
-  if (filecnt >= 25)
+  else if (filecnt >= 25)
     {
       fprintf (outfile, "\
 /* { dg-do run { xfail *-*-* } } */\n\

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]