re PR fortran/52029 ([OOP] _copy should be PURE)

2012-01-31  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52029
        * class.c (gfc_find_derived_vtab): Mark _copy function as pure.

2012-01-31  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52029
        * gfortran.dg/class_49.f90: New.

From-SVN: r183770
This commit is contained in:
Tobias Burnus 2012-01-31 19:38:43 +01:00 committed by Tobias Burnus
parent 2419ff64b9
commit 0b73eb812e
4 changed files with 22 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2012-01-31 Tobias Burnus <burnus@net-b.de>
PR fortran/52029
* class.c (gfc_find_derived_vtab): Mark _copy function as pure.
2012-01-31 Tobias Burnus <burnus@net-b.de>
PR fortran/52013

View file

@ -717,6 +717,7 @@ gfc_find_derived_vtab (gfc_symbol *derived)
sub_ns->proc_name = copy;
copy->attr.flavor = FL_PROCEDURE;
copy->attr.subroutine = 1;
copy->attr.pure = 1;
copy->attr.if_source = IFSRC_DECL;
/* This is elemental so that arrays are automatically
treated correctly by the scalarizer. */

View file

@ -1,3 +1,8 @@
2012-01-31 Tobias Burnus <burnus@net-b.de>
PR fortran/52029
* gfortran.dg/class_49.f90: New.
2012-01-31 Tobias Burnus <burnus@net-b.de>
PR fortran/52013

View file

@ -0,0 +1,11 @@
! { dg-do compile }
!
! PR fortran/52029
!
elemental subroutine foo()
type t
end type t
class(t), allocatable :: x
if (allocated(x)) i = 5
end