Commit 57e15568 by Tobias Burnus Committed by Tobias Burnus

re PR fortran/45077 (ICE with -fwhole-file in fold_convert_loc, at fold-const.c:2021)

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

        PR fortran/45077
        * trans-types.c (gfc_get_derived_type): Fix DT declaration
        from modules for whole-file mode.

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

        PR fortran/45077
        * gfortran.dg/whole_file_24.f90: New.

From-SVN: r162619
parent b4351367
2010-07-28 Tobias Burnus <burnus@net-b.de>
PR fortran/45077
* trans-types.c (gfc_get_derived_type): Fix DT declaration
from modules for whole-file mode.
2010-07-27 Joseph Myers <joseph@codesourcery.com>
* gfortran.h (gfc_handle_option): Update prototype and return
......
......@@ -1994,8 +1994,10 @@ gfc_get_derived_type (gfc_symbol * derived)
gfc_symbol *s;
s = NULL;
gfc_find_symbol (derived->name, gsym->ns, 0, &s);
if (s && s->backend_decl)
if (s)
{
if (!s->backend_decl)
s->backend_decl = gfc_get_derived_type (s);
gfc_copy_dt_decls_ifequal (s, derived, true);
goto copy_derived_types;
}
......
2010-07-28 Tobias Burnus <burnus@net-b.de>
PR fortran/45077
* gfortran.dg/whole_file_24.f90: New.
2010-07-27 Jason Merrill <jason@redhat.com>
* g++.dg/cpp0x/variadic102.C: New.
......
! { dg-do compile }
!
! PR fortran/45077
!
! Contributed by Dominique d'Humieres, based on a test
! case of Juergen Reuter.
!
module iso_red
type, public :: varying_string
character(LEN=1), dimension(:), allocatable :: chars
end type varying_string
end module iso_red
module ifiles
use iso_red, string_t => varying_string
contains
function line_get_string_advance (line) result (string)
type(string_t) :: string
character :: line
end function line_get_string_advance
end module ifiles
module syntax_rules
use iso_red, string_t => varying_string
use ifiles, only: line_get_string_advance
contains
subroutine syntax_init_from_ifile ()
type(string_t) :: string
string = line_get_string_advance ("")
end subroutine syntax_init_from_ifile
end module syntax_rules
end
! { dg-final { cleanup-modules "iso_red ifiles syntax_rules" } }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment