Given this eq-mod.f90 module aap real a(5) real b(3) equivalence (a(3),b(1)) end module aap
and the following main program eq-main.f90 use aap, only : b print*,b end draws, when compiling with GNU Fortran (GCC) 4.2.1 20070523 (prerelease), as follows: [EMAIL PROTECTED]:~/g95-bugs$ /usr/rel/bin/gfortran -c eq-mod.f90 [EMAIL PROTECTED]:~/g95-bugs$ /usr/rel/bin/gfortran -c eq-main.f90 [EMAIL PROTECTED]:~/g95-bugs$ /usr/rel/bin/gfortran -static eq-main.o eq-mod.o eq-main.o: In function `MAIN__': eq-main.f90:(.text+0x78): undefined reference to `__aap(bool)' collect2: ld returned 1 exit status The "(bool)" is a red herring, caused by collect2's "helpful" reinterpretation of the following external reference: [EMAIL PROTECTED]:~/g95-bugs$ nm eq-main.o U __aap__b ... -- Summary: Module with equivalence draws "unsatisfied reference" Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: toon at moene dot indiv dot nluug dot nl http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32103