Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!ncar!cgdisis.cgd.ucar.edu!gary From: gary@cgdisis.cgd.ucar.edu (Gary Strand) Newsgroups: comp.lang.fortran Subject: Re: Getting right modules from libraries Keywords: Unique entry names Message-ID: <9836@ncar.ucar.edu> Date: 9 Jan 91 07:02:51 GMT References: <9767@ncar.ucar.edu> <1991Jan8.235305.14674@lpi.liant.com> Sender: news@ncar.ucar.edu Organization: Climate and Global Dynamics Division/NCAR, Boulder, CO Lines: 25 > Rick Gorton > Add a call to a dummy routine from some unused subroutine A, and put that > dummy routine in the same compilation unit as your replacement module. > Then, at link time, put your library (containing the new routine) on the > command line before the 'f77' and system routines. This should solve the > problem. It did. The problem was that the new routines were not being called by my program directly. Thus, they were not undefined references at link time, thus 'f77' didn't access them. So, I called each of them with dummy arguments from a dummy subroutine, and that worked. I still don't particularly like this solution, because as you pointed out, I may not know what the arguments may be, necessarily. Our Cray FORTRAN compiler manages to cross-check everything, and tells you which one is being used. I suppose that's the difference between a compiler written for a machine (Suns) that isn't used for FORTRAN very much, and one in which FORTRAN makes up most of the code written for it. I'd like to thank all respondees to my question. -- Gary Strand There is only one success -- to be able Internet: strandwg@ncar.ucar.edu to spend your life in your own way. Voicenet: (303) 497-1336 - Christopher Morley