re PR fortran/40011 (Problems with -fwhole-file)
authorTobias Burnus <burnus@net-b.de>
Sat, 24 Jul 2010 16:32:11 +0000 (18:32 +0200)
committerTobias Burnus <burnus@gcc.gnu.org>
Sat, 24 Jul 2010 16:32:11 +0000 (18:32 +0200)
2010-07-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40011
        * parse.c (gfc_parse_file): Do not override
        gfc_global_ns_list items.

2010-07-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40011
        * gfortran.dg/whole_file_21.f90: New.

        * gfortran.dg/integer_exponentiation_3.F90: Use
        -ffloat-store only for i?86/x86-64 -m32.

From-SVN: r162500

gcc/fortran/ChangeLog
gcc/fortran/parse.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90

index 68c4b7a..6f654ca 100644 (file)
@@ -1,5 +1,11 @@
 2010-07-24  Tobias Burnus  <burnus@net-b.de>
 
+       PR fortran/40011
+       * parse.c (gfc_parse_file): Do not override
+       gfc_global_ns_list items.
+
+2010-07-24  Tobias Burnus  <burnus@net-b.de>
+
        * options.c (gfc_init_options): Enable -fwhole-file by default.
        * interface.c (compare_parameter): Assume a Hollerith constant is
        compatible with all other argument types.
index a1af026..616fb50 100644 (file)
@@ -4414,7 +4414,11 @@ prog_units:
      later and all their interfaces resolved.  */
   gfc_current_ns->code = s.head;
   if (next)
-    next->sibling = gfc_current_ns;
+    {
+      for (; next->sibling; next = next->sibling)
+       ;
+      next->sibling = gfc_current_ns;
+    }
   else
     gfc_global_ns_list = gfc_current_ns;
 
index a43aee9..115f633 100644 (file)
@@ -1,5 +1,13 @@
 2010-07-24  Tobias Burnus  <burnus@net-b.de>
 
+       PR fortran/40011
+       * gfortran.dg/whole_file_21.f90: New.
+
+       * gfortran.dg/integer_exponentiation_3.F90: Use
+       -ffloat-store only for i?86/x86-64 -m32.
+
+2010-07-24  Tobias Burnus  <burnus@net-b.de>
+
        * gfortran.dg/entry_13.f90: Use abs() > eps instead of "/=".
        * gfortran.dg/integer_exponentiation_3.F90: Use -ffloat-store.
 
index 9277b7a..5c6c5bf 100644 (file)
@@ -1,8 +1,8 @@
 ! { dg-do run { xfail spu-*-* } }
 ! FAILs on SPU because of wrong compile-time rounding mode
-! { dg-options "-ffloat-store" }
+! { dg-options "" }
+! { dg-options "-ffloat-store" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } 
 !
-! -ffloat-store needed for x87
 !
 module mod_check
   implicit none