Я помогаю обновить устаревшую базу кода на Фортране, в которой есть определения интерфейса для функций / подпрограмм.
Проблема, с которой я сталкиваюсь, заключается в том, что некоторые из этих интерфейсов не синхронизированы с фактическими определениями функций, и компилятор (silverfrost) не перехватывает их во время компиляции. Это приводит к ошибкам во время выполнения.
Игнорируя определенный компилятор, который я сейчас использую, есть ли у Fortran метод для обработки этого без повторения определения функции? Например, в C #, Java и т. Д. Я могу объявить функцию и вызывать ее из любого места в проекте, а компилятор обеспечивает совместимость вызывающей и целевой функций.
Разве GNU Fortran или компилятор Intel Fortran делают это менее уязвимым?