]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/fortran/trans-types.c
re PR fortran/45586 (ICE non-trivial conversion at assignment)
authorMichael Matz <matz@suse.de>
Fri, 18 Feb 2011 19:52:16 +0000 (19:52 +0000)
committerMichael Matz <matz@gcc.gnu.org>
Fri, 18 Feb 2011 19:52:16 +0000 (19:52 +0000)
commitb3c1b8a1d6838854acf96be354339a62ff27599e
treeed9bae538119f7a14e04f53cad9c5316df51293e
parent430aa86819b6a4e6a806220886a77a08e5afc0f8
re PR fortran/45586 (ICE non-trivial conversion at assignment)

PR fortran/45586
* gfortran.h (struct gfc_component): Add norestrict_decl member.
* trans.h (struct lang_type): Add nonrestricted_type member.
* trans-expr.c (gfc_conv_component_ref): Search fields with correct
parent type.
* trans-types.c (mirror_fields, gfc_nonrestricted_type): New.
(gfc_sym_type): Use it.

testsuite/
PR fortran/45586
* gfortran.dg/lto/pr45586_0.f90: New test.
* gfortran.dg/typebound_proc_20.f90: Ditto.
* gfortran.dg/typebound_proc_21.f90: Ditto.

From-SVN: r170284
gcc/fortran/ChangeLog
gcc/fortran/gfortran.h
gcc/fortran/trans-expr.c
gcc/fortran/trans-types.c
gcc/fortran/trans.h
gcc/testsuite/gfortran.dg/lto/pr45586_0.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/typebound_proc_20.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/typebound_proc_21.f90 [new file with mode: 0644]