enum6.C, [...]: Broaden dg-options pattern.
authorMark Shinwell <shinwell@codesourcery.com>
Tue, 6 May 2008 18:34:53 +0000 (18:34 +0000)
committerDaniel Jacobowitz <drow@gcc.gnu.org>
Tue, 6 May 2008 18:34:53 +0000 (18:34 +0000)
* g++.old-deja/g++.jason/enum6.C, g++.old-deja/g++.law/enum9.C,
g++.old-deja/g++.other/enum4.C, gfortran/enum_9.f90,
gfortran.dg/enum_10.f90: Broaden dg-options pattern.

Co-Authored-By: Andrew Jenner <andrew@codesourcery.com>
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
From-SVN: r134993

gcc/testsuite/ChangeLog
gcc/testsuite/g++.old-deja/g++.jason/enum6.C
gcc/testsuite/g++.old-deja/g++.law/enum9.C
gcc/testsuite/g++.old-deja/g++.other/enum4.C
gcc/testsuite/gfortran.dg/enum_10.f90
gcc/testsuite/gfortran.dg/enum_9.f90

index 4aacdf2112b9fa70014607bc493703906a326de1..7e4386ef3808d8abd76c2725448be08dd4ba7689 100644 (file)
@@ -1,3 +1,11 @@
+2008-05-06  Mark Shinwell  <shinwell@codesourcery.com>
+           Daniel Jacobowitz  <dan@codesourcery.com>
+           Andrew Jenner  <andrew@codesourcery.com>
+
+       * g++.old-deja/g++.jason/enum6.C, g++.old-deja/g++.law/enum9.C,
+       g++.old-deja/g++.other/enum4.C, gfortran/enum_9.f90,
+       gfortran.dg/enum_10.f90: Broaden dg-options pattern.
+
 2008-05-06  Tom Tromey  <tromey@redhat.com>
 
        PR preprocessor/35313, PR preprocessor/36088:
index 586b4ce54866f50ce19de004d7a2ec99d07848c5..7be0cd868cc1723d52947b9c86457872f344fd43 100644 (file)
@@ -1,6 +1,17 @@
 // { dg-do run  }
 // { dg-options "-fshort-enums" }
 
+// On ARM EABI targets this testcase will cause a warning to be emitted
+// whilst EABI attributes are being merged at link time unless
+// the --no-enum-size-warning option is passed to the linker.  Whilst the
+// enum-size attributes should only be emitted if there are values of
+// enum type that can escape the compilation unit, gcc cannot currently
+// detect this; if this facility is added then this linker option should
+// not be needed.  arm-*-linux*eabi should be a good approximation to
+// those platforms where the EABI supplement defines enum values to be
+// 32 bits wide.
+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+
 #include <limits.h>
 
 enum A { a1 = 0x7fffffff };
index 9713e4b90e51c686c2565f4a8059268c8b974bdb..5a74b2f6fdd62c4e9405f7d1f78c22eace4a4678 100644 (file)
@@ -1,5 +1,17 @@
 // { dg-do run  }
 // { dg-options "-fshort-enums" }
+
+// On ARM EABI targets this testcase will cause a warning to be emitted
+// whilst EABI attributes are being merged at link time unless
+// the --no-enum-size-warning option is passed to the linker.  Whilst the
+// enum-size attributes should only be emitted if there are values of
+// enum type that can escape the compilation unit, gcc cannot currently
+// detect this; if this facility is added then this linker option should
+// not be needed.  arm-*-linux*eabi should be a good approximation to
+// those platforms where the EABI supplement defines enum values to be
+// 32 bits wide.
+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+
 // GROUPS passed enums
   extern "C" int printf (const char *, ...);
 
index 6dd025c4fa66ab4b5e8203918b42ddd72652e0fd..429e8127c2b0eb21e59b7c2495f7d9b20ce73530 100644 (file)
@@ -1,7 +1,19 @@
 // { dg-do run  }
 // { dg-options "-fshort-enums" }
+
 // Origin: Mark Mitchell <mark@codesourcery.com>
 
+// On ARM EABI targets this testcase will cause a warning to be emitted
+// whilst EABI attributes are being merged at link time unless
+// the --no-enum-size-warning option is passed to the linker.  Whilst the
+// enum-size attributes should only be emitted if there are values of
+// enum type that can escape the compilation unit, gcc cannot currently
+// detect this; if this facility is added then this linker option should
+// not be needed.  arm-*-linux*eabi should be a good approximation to
+// those platforms where the EABI supplement defines enum values to be
+// 32 bits wide.
+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+
 enum E { 
   a = -312
 };
index 6bfd819097ec1d0dbd2f0f239cc261ffa2713184..99a16901c4b5a94070895bdb196e919cdacf73c3 100644 (file)
@@ -1,6 +1,7 @@
 ! { dg-do run }
 ! { dg-additional-sources enum_10.c }
 ! { dg-options "-fshort-enums -w" }
+! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
 ! Make sure short enums are indeed interoperable with the
 ! corresponding C type.
 
index e735cf87772ba17875e1373e15c69bf13686bc55..8a5c60a10f4c026f54a0068860ec4709f687088a 100644 (file)
@@ -1,5 +1,6 @@
 ! { dg-do run }
 ! { dg-options "-fshort-enums" }
+! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
 ! Program to test enumerations when option -fshort-enums is given
 
 program main