re PR fortran/46809 ([OOP] ICE with -fcheck=pointer for CLASS IS)
2010-12-12 Janus Weil <janus@gcc.gnu.org> PR fortran/46809 * resolve.c (resolve_select_type): Set the location of the first argument when generating the EXTENDS_TYPE_OF call. 2010-12-12 Janus Weil <janus@gcc.gnu.org> PR fortran/46809 * gfortran.dg/pointer_check_8.f90: New. From-SVN: r167731
This commit is contained in:
parent
4a10fb9416
commit
2c3d0cd388
4 changed files with 33 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2010-12-12 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/46809
|
||||
* resolve.c (resolve_select_type): Set the location of the first
|
||||
argument when generating the EXTENDS_TYPE_OF call.
|
||||
|
||||
2010-12-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||
|
||||
PR fortran/46705
|
||||
|
|
|
@ -7893,6 +7893,7 @@ resolve_select_type (gfc_code *code, gfc_namespace *old_ns)
|
|||
/* Set up arguments. */
|
||||
new_st->expr1->value.function.actual = gfc_get_actual_arglist ();
|
||||
new_st->expr1->value.function.actual->expr = gfc_get_variable_expr (code->expr1->symtree);
|
||||
new_st->expr1->value.function.actual->expr->where = code->loc;
|
||||
gfc_add_vptr_component (new_st->expr1->value.function.actual->expr);
|
||||
vtab = gfc_find_derived_vtab (body->ext.case_list->ts.u.derived);
|
||||
st = gfc_find_symtree (vtab->ns->sym_root, vtab->name);
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2010-12-12 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/46809
|
||||
* gfortran.dg/pointer_check_8.f90: New.
|
||||
|
||||
2010-12-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||
|
||||
PR fortran/46705
|
||||
|
|
21
gcc/testsuite/gfortran.dg/pointer_check_8.f90
Normal file
21
gcc/testsuite/gfortran.dg/pointer_check_8.f90
Normal file
|
@ -0,0 +1,21 @@
|
|||
! { dg-do compile}
|
||||
! { dg-options "-fcheck=pointer" }
|
||||
!
|
||||
! PR 46809: [OOP] ICE with -fcheck=pointer for CLASS IS
|
||||
!
|
||||
! Contributed by Salvatore Filippone <sfilippone@uniroma2.it>
|
||||
|
||||
type t
|
||||
end type t
|
||||
|
||||
contains
|
||||
|
||||
subroutine sub(a)
|
||||
class(t) :: a
|
||||
select type (a)
|
||||
class is (t)
|
||||
print *, 'Hi there'
|
||||
end select
|
||||
end subroutine
|
||||
|
||||
end
|
Loading…
Add table
Reference in a new issue