http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58007
Bug ID: 58007 Summary: ICE -- free_pi_tree(): Unresolved fixup, depends on order of module inclusion Product: gcc Version: 4.7.2 Status: UNCONFIRMED Severity: major Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: shapero at uw dot edu I have a moderate-size code I've been developing in Fortran 2003. I've tried to reproduce it with small test cases to no avail -- perhaps I can give a link to my git repository with instructions? The following should work just fine: git clone https://github.com/danshapero/fempack.git git checkout e7547abe131b5c0e137fb0327069a75fcfed5d90 make libs However, make the following change to src/linalg/linalg.f90: - use bsr use ellpack use csr + use bsr and the following error results: Internal Error at (1): free_pi_tree(): Unresolved fixup make: *** [src/linalg/linalg.o] Error 1 If it makes a difference, I'm using polymorphism somewhat extensively. I've seen the following bug reports with similar behavior before: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47546 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47601 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53015 In 47546, it's suggested that the error can be fixed by using implicit instead of explicit shape arrays; all my arrays are implicit shape, so it's not that. I'm compiling with just the -J flag; in 53015 it was suggested that using both -I and -J can contribute to the problem. While I might be able to make my code compile by cramming a bunch of modules all together, it would make everything less, well, modular. Not desirable. Hope the instructions were helpful and thanks for the help!