У меня есть большая кодовая база Fortran, которая первоначально предназначалась для компилятора Intel. Сейчас я готовлюсь к компиляции с Gfortran. К сожалению, код изобилует директивами предварительной обработки в стиле Intel, такими как:
!DEC$ IF DEFINED (MYDIRECTIVE)
REAL, DIMENSION(:,:,:), ALLOCATABLE :: my_real_var
!DEC$ ENDIF
Из того, что я могу сказать с помощью googling и gfortran docs, нет никакой внутренней поддержки gfortran для чего-либо кроме предварительной обработки в стиле C, например:
#if defined MYDIRECTIVE
REAL, DIMENSION(:,:,:), ALLOCATABLE :: my_real_var
#endif
Кто-нибудь еще сталкивался с этой проблемой и придумал элегантное решение? Очевидно, я мог бы написать сценарий оболочки, который вызывает внешний препроцессор перед передачей кода в gfortran для компиляции, но это просто не кажется мне потрясающим решением.
Есть мысли? Спасибо ТАК Гуру!