[patch, fortran] PR41909 [4.4/4.5 Regression] ICE with "call foo" in "program foo"
Jerry DeLisle
jvdelisle@verizon.net
Fri Nov 6 04:33:00 GMT 2009
Hi Folks,
This simple patch avoids the assertion that is giving the ICE.
Regression tested on x86-64.
With the patch, the test case in the PR gives:
$ gfc pr41909.f90
pr41909.f90:3.13:
call test()
1
pr41909.f90:1.12:
program test
2
Error: Global name 'test' at (1) is already being used as a PROGRAM at (2)
OK for trunk?
Regards,
Jerry
Index: resolve.c
===================================================================
--- resolve.c (revision 153956)
+++ resolve.c (working copy)
@@ -1117,6 +1117,9 @@
gfc_symbol* context_proc;
gfc_namespace* real_context;
+ if (sym->attr.flavor == FL_PROGRAM)
+ return false;
+
gcc_assert (sym->attr.flavor == FL_PROCEDURE);
/* If we've got an ENTRY, find real procedure. */
More information about the Gcc-patches
mailing list