This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Patch, Fortran, 4.5 Regression] PR 40822: Internal compiler error when Fortran intrinsic LEN referenced before explicit declaration


Hi all,

here is a close-to-obvious two-line patch, fixing a regression which
was introduced by one of my earlier ProcPtr patches. Regtested on
x86_64-unknown-linux-gnu. Ok for trunk?

Cheers,
Janus


2009-07-23  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40822
	* symbol.c (gfc_copy_formal_args_intr): Make sure ts.cl is present
	for CHARACTER variables.


2009-07-23  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40822
	* gfortran.dg/char_length_16.f90: New.
Index: gcc/fortran/symbol.c
===================================================================
--- gcc/fortran/symbol.c	(revision 149848)
+++ gcc/fortran/symbol.c	(working copy)
@@ -3927,6 +3927,9 @@ gfc_copy_formal_args_intr (gfc_symbol *d
       formal_arg->sym->attr.flavor = FL_VARIABLE;
       formal_arg->sym->attr.dummy = 1;
 
+      if (formal_arg->sym->ts.type == BT_CHARACTER)
+	formal_arg->sym->ts.cl = gfc_get_charlen ();
+
       /* If this isn't the first arg, set up the next ptr.  For the
         last arg built, the formal_arg->next will never get set to
         anything other than NULL.  */

Attachment: char_length_16.f90
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]