This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/69566] [6 Regression] ICE with unlimited polymorphic array pointer function
- 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: Sat, 30 Jan 2016 17:30:30 +0000
- Subject: [Bug fortran/69566] [6 Regression] ICE with unlimited polymorphic array pointer function
- Auto-submitted: auto-generated
- References: <bug-69566-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69566
--- Comment #2 from Paul Thomas <pault at gcc dot gnu.org> ---
Index: gcc/fortran/trans-expr.c
===================================================================
*** gcc/fortran/trans-expr.c (revision 233009)
--- gcc/fortran/trans-expr.c (working copy)
*************** gfc_conv_procedure_call (gfc_se * se, gf
*** 4723,4730 ****
is the third and fourth argument to such a function call a value
denoting the number of elements to copy (i.e., most of the time the
length of a deferred length string). */
! ulim_copy = formal == NULL && UNLIMITED_POLY (sym)
! && strcmp ("_copy", comp->name) == 0;
/* Evaluate the arguments. */
for (arg = args, argc = 0; arg != NULL;
--- 4723,4731 ----
is the third and fourth argument to such a function call a value
denoting the number of elements to copy (i.e., most of the time the
length of a deferred length string). */
! ulim_copy = (formal == NULL)
! && UNLIMITED_POLY (sym)
! && comp && (strcmp ("_copy", comp->name) == 0);
/* Evaluate the arguments. */
for (arg = args, argc = 0; arg != NULL;
fixes the ICE. I will commit as 'obvious' in a few minutes. Unfortunately, it
exposes another bug, when fixed that I have seen before.... somewhere!
After the commit, I will modify this PR to reflect the new bug.
Cheers
Paul