This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libfortran/80850] Sourced allocate() fails to allocate a pointer
- From: "pault at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 30 Oct 2017 22:07:56 +0000
- Subject: [Bug libfortran/80850] Sourced allocate() fails to allocate a pointer
- Auto-submitted: auto-generated
- References: <bug-80850-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80850
--- Comment #24 from Paul Thomas <pault at gcc dot gnu.org> ---
Author: pault
Date: Mon Oct 30 22:07:25 2017
New Revision: 254244
URL: https://gcc.gnu.org/viewcvs?rev=254244&root=gcc&view=rev
Log:
2017-10-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/80850
* trans_expr.c (gfc_conv_procedure_call): When passing a class
argument to an unlimited polymorphic dummy, it is wrong to cast
the passed expression as unlimited, unless it is unlimited. The
correct way is to assign to each of the fields and set the _len
field to zero.
2017-10-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/80850
* gfortran.dg/class_64_f90 : New test.
Added:
trunk/gcc/testsuite/gfortran.dg/class_64.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-expr.c
trunk/gcc/testsuite/ChangeLog