]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR fortran/59414 ([OOP] ICE in in gfc_conv_expr_descriptor on ALLOCATE inside...
authorPaul Thomas <pault@gcc.gnu.org>
Sat, 1 Feb 2014 22:31:53 +0000 (22:31 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Sat, 1 Feb 2014 22:31:53 +0000 (22:31 +0000)
commitd2c7fdd9bac808587a2313d3795f80350fc93839
tree63d89d5b29ef36db2a1071ff5f1a9154a193f8da
parentc4fcf650bd8643aded82bcdfdf203f0ac95d0e03
re PR fortran/59414 ([OOP] ICE in in gfc_conv_expr_descriptor on ALLOCATE inside SELECT TYPE)

2014-02-01  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/59414
* trans-stmt.c (gfc_trans_allocate): Before the pointer
assignment to transfer the source _vptr to a class allocate
expression, the final class reference should be exposed. The
tail that includes the _data and array references is stored.
This reduced expression is transferred to 'lhs' and the _vptr
added. Then the tail is restored to the allocate expression.

2014-02-01  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/59414
* gfortran.dg/allocate_class_3.f90 : New test

From-SVN: r207390
gcc/fortran/ChangeLog
gcc/fortran/trans-stmt.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/allocate_class_3.f90 [new file with mode: 0644]