re PR fortran/47463 ([OOP] ICE in gfc_add_component_ref)
2011-02-09 Janus Weil <janus@gcc.gnu.org> PR fortran/47463 * resolve.c (resolve_typebound_subroutine): Remove erroneous line. 2011-02-09 Janus Weil <janus@gcc.gnu.org> PR fortran/47463 * gfortran.dg/typebound_assignment_2.f03: New. From-SVN: r169985
This commit is contained in:
parent
282ec48e04
commit
15167bbaa5
@ -1,3 +1,8 @@
|
||||
2011-02-09 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/47463
|
||||
* resolve.c (resolve_typebound_subroutine): Remove erroneous line.
|
||||
|
||||
2011-02-09 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/47637
|
||||
|
@ -5894,7 +5894,6 @@ resolve_typebound_subroutine (gfc_code *code)
|
||||
name = name ? name : code->expr1->value.function.esym->name;
|
||||
code->expr1->symtree = expr->symtree;
|
||||
code->expr1->ref = gfc_copy_ref (expr->ref);
|
||||
expr->symtree->n.sym->ts.u.derived = declared;
|
||||
gfc_add_vptr_component (code->expr1);
|
||||
gfc_add_component_ref (code->expr1, name);
|
||||
code->expr1->value.function.esym = NULL;
|
||||
|
@ -1,3 +1,8 @@
|
||||
2011-02-09 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/47463
|
||||
* gfortran.dg/typebound_assignment_2.f03: New.
|
||||
|
||||
2011-02-09 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/47664
|
||||
|
39
gcc/testsuite/gfortran.dg/typebound_assignment_2.f03
Normal file
39
gcc/testsuite/gfortran.dg/typebound_assignment_2.f03
Normal file
@ -0,0 +1,39 @@
|
||||
! { dg-do compile }
|
||||
!
|
||||
! PR 47463: [OOP] ICE in gfc_add_component_ref
|
||||
!
|
||||
! Contributed by Rich Townsend <townsend@astro.wisc.edu>
|
||||
|
||||
module hydro_grid
|
||||
type :: grid_t
|
||||
contains
|
||||
procedure :: assign
|
||||
generic :: assignment(=) => assign
|
||||
end type grid_t
|
||||
public :: grid_t
|
||||
contains
|
||||
subroutine assign (this, that)
|
||||
class(grid_t), intent(inout) :: this
|
||||
class(grid_t), intent(in) :: that
|
||||
end subroutine assign
|
||||
end module hydro_grid
|
||||
|
||||
module hydro_flow
|
||||
use hydro_grid
|
||||
type :: flow_t
|
||||
class(grid_t), allocatable :: gr
|
||||
end type flow_t
|
||||
contains
|
||||
subroutine init_params (this)
|
||||
class(flow_t), intent(out) :: this
|
||||
type(grid_t) :: gr
|
||||
call init_comps(this, gr)
|
||||
end subroutine init_params
|
||||
subroutine init_comps (this, gr)
|
||||
class(flow_t), intent(out) :: this
|
||||
class(grid_t), intent(in) :: gr
|
||||
this%gr = gr
|
||||
end subroutine init_comps
|
||||
end module hydro_flow
|
||||
|
||||
! { dg-final { cleanup-modules "hydro_grid hydro_flow" } }
|
Loading…
x
Reference in New Issue
Block a user