gfortran (mac os x): ошибка: спецификация массива в (1) имеет более 7 измерений

Я использую El Capitan 10.11.6 и установил gcc 6.1.0 из доморощенного. У меня есть программа Fortran test.f, в которой есть> 7-мерные массивы. Я скомпилировал с помощью

gfortran -std=f2008 test.f

Я думал, что Fortran 2008 обрабатывает массивы размером до 15. Однако я все равно получаю следующее:

Error: Array specification at (1) has more than 7 dimensions

Что я сделал не так?


person Mariska    schedule 28.07.2016    source источник
comment
Я думаю, что этот флаг говорит fortran принять синтаксис и конструкции Fortran 2008 в той мере, в какой он их реализует. Но это не заставляет компилятор волшебным образом реализовывать все функции 2008 года. Есть несколько источников информации о том, какие компиляторы реализуют какие функции, в том числе fortranwiki.org/fortran/ показать/Fortran+2008+статус. Взглянуть.   -  person High Performance Mark    schedule 28.07.2016
comment
Спасибо! На сайте не указано, какие компиляторы обрабатывают ›7 массивов. Знаете ли вы, какие бесплатные компиляторы я могу использовать в Mac OS X, которые обрабатывают ›7 массивов?   -  person Mariska    schedule 28.07.2016
comment
Если его нет в этом списке, это не компилятор Fortran, по крайней мере, не доступный в настоящее время. Доставай свою чековую книжку.   -  person High Performance Mark    schedule 28.07.2016
comment
Он показывает, какие компиляторы обрабатывают ›7 массивов, это строка Максимальный ранг + коранг ≤ 15. Особенности для GCC можно найти в gcc.gnu.org/wiki/Fortran2008Status. Вы можете попробовать openuh: web.cs.uh.edu/~openuh, хотя он в основном ориентирован на массивы. Я понятия не имею, поддерживают ли они более 7 измерений.   -  person haraldkl    schedule 28.07.2016


Ответы (1)


С версией gfortran 8.1.0 работает с флагом компиляции -std=f2008

program test
integer, parameter :: dp = kind(1.d0)
real(kind=dp) :: vec(2,3,3,6,2,3,12,8)
end program

Эту тестовую программу компилируют с

gfortran -std=f2008 test.f90 -o test
person Guillaume Jacquenot    schedule 23.07.2018
comment
kind=8 УЖАСНЫЙ. - person Vladimir F; 23.07.2018