------- Comment #1 from fxcoudert at gcc dot gnu dot org  2006-05-10 21:36 
-------
Below is a patch for this ICE. I suspect that there a lots more ICEs lurking in
dump-parse-tree.c, which looks like it's not really written to be fed with
incomplete structures (as might happen during error recovery). I'll try to
audit the rest of the file for such problems.

Index: dump-parse-tree.c
===================================================================
--- dump-parse-tree.c   (revision 113671)
+++ dump-parse-tree.c   (working copy)
@@ -1060,7 +1060,13 @@
       break;

     case EXEC_CALL:
-      gfc_status ("CALL %s ", c->resolved_sym->name);
+      if (c->resolved_sym)
+       gfc_status ("CALL %s ", c->resolved_sym->name);
+      else if (c->symtree)
+       gfc_status ("CALL %s ", c->symtree->name);
+      else
+       gfc_status ("CALL ?? ");
+
       gfc_show_actual_arglist (c->ext.actual);
       break;



-- 

fxcoudert at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |fxcoudert at gcc dot gnu dot
                   |                            |org
         AssignedTo|unassigned at gcc dot gnu   |fxcoudert at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
           Keywords|                            |patch
   Last reconfirmed|2006-04-26 16:41:12         |2006-05-10 21:36:24
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27320

Reply via email to