Распределяемые символьные переменные в Фортране
Мой код (сокращенный до того, что я считаю актуальным для этого вопроса)
PROGRAM test
IMPLICIT NONE
CHARACTER(len=37) input
CHARACTER(len=:), allocatable :: input_trim
WRITE(*,*) 'Filename?'
READ(*,*) input
ALLOCATE(character(len=LEN(TRIM(input))) :: input_trim)
input_trim=trim(input)
.
.
.
END PROGRAM test
Он отлично работает с IntelКомпилятор Фортрана, однако gfortran выдает мне несколько ошибок, первая из которых гласит: «
CHARACTER(len=:), allocatable :: input_trim
я не уверен, какой компиляторправо' относительно стандарта Фортрана. Плюс я неНе знаю, как добиться того, что мне нужно, по-другому ?! Я думаю, что яВ любом случае, это больше обходной путь. Что мне нужно, это символьная переменная, содержащая именно то имя файла, которое было введено без следующих пробелов.
РЕДАКТИРОВАТЬ: ошибка "Синтаксическая ошибка в объявлении CHARACTER ", Гфортран - версия дает мне "GNU Fortran (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3) "
РЕДАКТИРОВАТЬ 2: ВыПраво в отношении распределения: с ifort я неэто не нужно И Gfortran падает до этого, так что, возможно, это неМне тоже не нужно выделять, но я не могу проверить это сейчас ...