[Users] Mojave|Simfactory|Fortran(thorn): F90 compiler rejecting "_##" in var names
scott.hawley at belmont.edu
Fri Dec 20 10:27:31 CST 2013
Yea, I've been specifying MacPorts executables for all compilers for a while now, but never knew about specifying the "Fortran pre-processor" until now. I guess it's been defaulting to the Apple pre-processor all this time without prior incident.
On Dec 20, 2013, at 4:51 AM, "Ian Hinder" <ian.hinder at aei.mpg.de<mailto:ian.hinder at aei.mpg.de>> wrote:
On 20 Dec 2013, at 07:58, Scott Hawley <scott.hawley at belmont.edu<mailto:scott.hawley at belmont.edu>> wrote:
Aha! That's the missing piece.
Also, FWIW, apparently in Apple's latest OS "Mavericks", cpp does not support macro concatenation via ## like the true GNU compilers do. (I tested this; I copied and pasted example source from the GNU manual.) Furthermore it ignores the "--traditional" flag, i.e. generates no warning or error if you supply the flag, but it has no effect on the behavior.
So! Problem solved. The fix is to specify FPP= in the options file with the --traditional flag, using a true GNU compiler such as from MacPorts. No modifications to cctk_Types.h is necessary.
We usually find that the apple compilers are not suitable for compiling the ET; we support using MacPorts using the simfactory optionlists, as this provides a single way to install all the required compilers and components. It's possible that we could make the apple compilers work, but there are other projects which have a higher priority.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Users