我想获得使用nagfor Fortran编译器时预定义的预处理器变量列表。与gfortran相当的是
gfortran -E -dM foo.F90
但是
nagfor -F -Wp,-dM foo.F90
我得到了
NAG Fortran Compiler Release 5.3(854)
fpp: warning: bad option: -dM , ignored.
我查看了nagfor documentation和fpp documentation,但无法找到答案。
我正在寻找的是一些变量来确定文件是用nagfor编译的,所以相当于gfortran __GFORTRAN__
,ifort __INTEL_COMPILER
和pgf90 {{1 }}。
答案 0 :(得分:2)
埋藏在fpp的文档中我找到了4.5.4 Macro definition的6.2版,问题的5.3版链接文档的第5.4节
默认情况下定义宏NAGFOR。
果然
#ifdef NAGFOR
print '("nagfor says hello")'
#endif
end
在通过预处理器时具有所需的结果。在我的情况下,宏取值1
,但我不知道它可能是多么一致。
根据Themos Tsikas条评论,also the macros __NAG_COMPILER_RELEASE
和__NAG_COMPILER_BUILD
确实采用了明确定义的值。