2017-03-16 2 views
2

제 3 자의 매우 오래된 Fortran 77 코드를 사용하고 있습니다 (매우 버그가 있음). 나는

FFLAGS=-O0 -Wall -g -fbacktrace -pedantic -Wextra 

내가 실행시 제목에 경고를 얻고 컴파일 한 :

At line <number> of file <namefile>.f (unit=6, file='stdout') 
Fortran runtime warning: Extension: $ descriptor 

나는 그게 무슨 뜻인지 파악하고 싶습니다.

+1

오래된 포트란 코드는 ** 여러 ** 경고를 줄 가능성이 매우 높다 :

표준 방법은 비 발전 입력/출력을 사용하는 것입니다. 그것들은 a) 비표준 확장자, b) 더 이상 사용되지 않거나 삭제 된 기능을 모두 포함 할 가능성이 매우 높습니다. 나는이 옵션들이 오래된 코드들에 대해 매우 유용하다고 생각하지 않는다. –

답변

3

줄이 가리키는 오류 또는 경고 메시지에 항상 코드 줄 번호를 표시해야합니다.

write(*,'(a$)') "string" 

에서 $의 역할은 화면에 "문자열"을 인쇄 한 후 다음 행으로 진행하지 않도록하는 것입니다.

그러나 설명자는 비표준이므로 컴파일러에서 이에 대해 경고합니다. 특히`-Wextra`과`-pedantic`으로,

write(*,'(a)', advance="no") "string" 
관련 문제