У меня есть какой-то устаревший код, который я пытаюсь скомпилировать, и мои доступные компиляторы задыхаются. Вот строки, вызывающие проблемы:
строка 5:
DIMENSION MMO(12)/31,28,31,30,31,30,31,31,30,31,30,31/
строки 7, 8:
DEFINE FILE 4(ANSI,FB,140,3360,0)
DEFINE FILE 7(SDF, ,42,42)
строка 119:
1905 FORMAT(J2,J4,J2,29I5)
Лахей-Фудзисту 95 говорит:
1116-S: "fz32.f", line 5, column 24: Comma expected.
1110-S: "fz32.f", line 5, column 28: Missing name.
1336-S: "fz32.f", line 7, column 7: DEFINE FILE statement not supported.
1336-S: "fz32.f", line 8, column 7: DEFINE FILE statement not supported.
1511-S: "fz32.f", line 119: Invalid character string 'J' found in format specification.
1515-S: "fz32.f", line 119: Edit descriptor must be specified after the repeat specification in a format specification.
... и другие пропущенные ошибки в именах
Гфортран 77 говорит:
fz32.f:5:
DIMENSION MMO(12)/31,28,31,30,31,30,31,31,30,31,30,31/
^
Invalid form for DIMENSION statement at (^)
fz32.f:7:
DEFINE FILE 4(ANSI,FB,140,3360,0)
1 2
Unrecognized statement name at (1) and invalid form for assignment or statement-function definition at (2)
fz32.f:8:
DEFINE FILE 7(SDF, ,42,42)
1 2
Unrecognized statement name at (1) and invalid form for assignment or statement-function definition at (2)
fz32.f:119:
1905 FORMAT(J2,J4,J2,29I5)
^
Unrecognized FORMAT specifier at (^)
fz32.f:119:
1905 FORMAT(J2,J4,J2,29I5)
^
Unrecognized FORMAT specifier at (^)
fz32.f:119:
1905 FORMAT(J2,J4,J2,29I5)
^
Unrecognized FORMAT specifier at (^)
Сбой gcc с похожими ошибками.
Так кто-нибудь знает, какой компилятор мог бы быть использован для сборки этого кода?
Кроме того, в строках 7 и 8 ANSI и SDF не определены ранее в коде. Как работают эти строки? Я ожидаю, что они будут форматировать флаги, но я не вижу, чтобы это было задокументировано.