Может ли оператор предварительной обработки CPP в Фортране иметь отступ?

Я довольно новичок в использовании оператора предварительной обработки Fortran и у меня есть вопрос, который, вероятно, довольно нативный. Может ли оператор предварительной обработки Fortran иметь отступ? Я тестировал с помощью Gfortran 4.8.1 в Linux (openSUSE Leap), и оказалось, что он вообще не может быть отступ.

Следующий код main.f90 работает сgfortran -cpp main.f90 -o main:

program main
    implicit none
#ifdef DEBUG
    print *, "I am in debug mode"
#endif 
    print *, "hello world!"
end program main

Но следующее выдает ошибку:

program main
    implicit none
    #ifdef DEBUG
    print *, "I am in debug mode"
    #endif 
    print *, "hello world!"
end program main

Сообщение об ошибкеError: Invalid character in name at (1), Означает ли это, что мы всегда должны писать оператор предварительной обработки с первого начала строки, или это просто правило, специфичное для компилятора? Любая помощь будет принята с благодарностью и заранее спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос