Ivan Pribec
Ivan Pribec
Yes, the entire situation is kind of messy. I have seen some codes which rely on the compiler flags such as `-fdefault-real-8` to automatically upgrade real literals such as `1.0`...
The Discourse Thread (https://fortran-lang.discourse.group/t/two-modules-with-the-same-name-in-one-program/4116) touched upon the issue of duplication of precision modules. What are the existing practices for defining precision? 1. Some libraries may provide routines in all of...
If relying on the preprocessor is not desirable (although J3 opened a forum on the preprocessor - https://mailman.j3-fortran.org/pipermail/j3/2022-August/013845.html), we could rely on "standard" filenames instead.
So it actually uses [response files](https://www.intel.com/content/www/us/en/develop/documentation/fortran-compiler-oneapi-dev-guide-and-reference/top/compilation/use-response-files.html)? They were [added also to GCC](https://gcc.gnu.org/wiki/Response_Files) to support Windows platforms where command-line length limits exist. I small test on MacOS shows response files work...
I thought I'd mention that fpm on Windows also uses response files in the archiver and linker commands: https://github.com/fortran-lang/fpm/issues/427. Given that fpm is in the process of adding a fypp...
I've opened an issue about the undocumented behavior at the Intel Fortran Forum: https://community.intel.com/t5/Intel-Fortran-Compiler/Undocumented-behavior-of-fpp-with-alternative-preprocessor/m-p/1411981#M162675
One of the moderators replied that the documentation will be amended. The exact layout of the response file remains somewhat under-specified for my taste. More information can be found here:...
I've launched an attempt to implement the interface modules using the fypp preprocessor here: https://github.com/ivan-pi/blis-f. If anyone wants to help, feel welcome to contact me.
Couldn't fpm have a built-in expression parser to evaluate some type of Fortran-inspired conditional statements? Something like: ``` link = [ 'merge("iomp","gomp",compiler == id_intel)' ] ``` The first suggestion from...
I think the approaches outlined in the last two comments can be merged. Edit: in fact, this is precisely option 2, just including all the useful information, and not only...