From: Tobias Burnus Date: Sat, 24 Jul 2010 16:32:11 +0000 (+0200) Subject: re PR fortran/40011 (Problems with -fwhole-file) X-Git-Tag: releases/gcc-4.6.0~5447 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8569c753080d9f5f00277759207a2671b8f0eff5;p=thirdparty%2Fgcc.git re PR fortran/40011 (Problems with -fwhole-file) 2010-07-24 Tobias Burnus PR fortran/40011 * parse.c (gfc_parse_file): Do not override gfc_global_ns_list items. 2010-07-24 Tobias Burnus 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 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 68c4b7a0728c..6f654cafa4c8 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2010-07-24 Tobias Burnus + + PR fortran/40011 + * parse.c (gfc_parse_file): Do not override + gfc_global_ns_list items. + 2010-07-24 Tobias Burnus * options.c (gfc_init_options): Enable -fwhole-file by default. diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index a1af02646589..616fb50ec673 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -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; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a43aee9a3a59..115f6333d148 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2010-07-24 Tobias Burnus + + 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 * gfortran.dg/entry_13.f90: Use abs() > eps instead of "/=". diff --git a/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 b/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 index 9277b7a7ccda..5c6c5bfe5e6b 100644 --- a/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 +++ b/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 @@ -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