resolve.c (gfc_resolve_finalizers): Ensure that parents are resolved first.
2014-08-17 Tobias Burnus <burnus@net-b.de> * resolve.c (gfc_resolve_finalizers): Ensure that parents are resolved first. 2014-08-17 Tobias Burnus <burnus@net-b.de> * gfortran.dg/finalize_27.f90: New. From-SVN: r214076
This commit is contained in:
parent
0522a84e51
commit
19fe965886
|
@ -1,3 +1,8 @@
|
|||
2014-08-17 Tobias Burnus <burnus@net-b.de>
|
||||
|
||||
* resolve.c (gfc_resolve_finalizers): Ensure that parents are
|
||||
resolved first.
|
||||
|
||||
2014-08-17 Tobias Burnus <burnus@net-b.de>
|
||||
|
||||
* trans-io.c (gfc_build_io_library_fndecls): Fix decl of
|
||||
|
|
|
@ -11416,6 +11416,10 @@ gfc_resolve_finalizers (gfc_symbol* derived, bool *finalizable)
|
|||
bool seen_scalar = false;
|
||||
gfc_symbol *vtab;
|
||||
gfc_component *c;
|
||||
gfc_symbol *parent = gfc_get_derived_super_type (derived);
|
||||
|
||||
if (parent)
|
||||
gfc_resolve_finalizers (parent, finalizable);
|
||||
|
||||
/* Return early when not finalizable. Additionally, ensure that derived-type
|
||||
components have a their finalizables resolved. */
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2014-08-17 Tobias Burnus <burnus@net-b.de>
|
||||
|
||||
* gfortran.dg/finalize_27.f90: New.
|
||||
|
||||
2014-08-16 Andrew Pinski <apinski@cavium.com>
|
||||
|
||||
* gcc.c-torture/compile/20140816-1.c: New testcase.
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
! { dg-do compile }
|
||||
!
|
||||
! Was ICEing before
|
||||
!
|
||||
! Contributed by Reinhold Bader
|
||||
!
|
||||
|
||||
module mod_fin_04
|
||||
implicit none
|
||||
type :: p_vec
|
||||
contains
|
||||
final :: delete
|
||||
end type p_vec
|
||||
type, extends(p_vec) :: bar
|
||||
contains
|
||||
final :: del2
|
||||
end type bar
|
||||
contains
|
||||
subroutine delete(this)
|
||||
type(p_vec) :: this
|
||||
end subroutine delete
|
||||
subroutine del2(this)
|
||||
type(bar) :: this
|
||||
end subroutine del2
|
||||
end module
|
Loading…
Reference in New Issue