I'm trying to compile my Fortran code using OneAPI mpiifort, and I got the following errors:
mpiifort -O2 -ip -w -ftz -align all -fno-alias -no-heap-arrays -c -i4 -r8 -convert big_endian -assume byterecl -mcmodel=medium -extend_source -fp-model strict -free -I. -I/usr/local/include -I/usr/include -I/opt/intel/oneapi/mpi/2021.2.0/include endrun.f90
areaMod.f90(313): error #5082: Syntax error, found END-OF-STATEMENT when expecting one of: <LABEL> <IDENTIFIER> TYPE MODULE ELEMENTAL IMPURE NON_RECURSIVE PURE RECURSIVE ...
do jo = 1, nlat_o
mpiifort -O2 -ip -w -ftz -align all -fno-alias -no-heap-arrays -c -i4 -r8 -convert big_endian -assume byterecl -mcmodel=medium -extend_source -fp-model strict -free -I. -I/usr/local/include -I/usr/include -I/opt/intel/oneapi/mpi/2021.2.0/include mkrank.f90
areaMod.f90(273): error #6218: This statement is positioned incorrectly and/or has syntax errors.
subroutine areaave (nlat_i , nlon_i , numlon_i, fld_i , &
areaMod.f90(346): error #6702: END statement confusion.
end subroutine areaave
compilation aborted for areaMod.f90 (code 1)
gmake: *** [/home/bianqy/BCC_ESM_OneAPI//models/bld/Makefile:138: areaMod.o] Error 1
gmake: *** Waiting for unfinished jobs....
However, the code could be compiled using Intel 2018 (2018.1.163) mpiifort with no errors. But for some reason, I have to use OneAPI to compile my code. I'm not sure if it has something to do with the newer mpiiofrt in oneAPI. Any suggestions are aprreciated!
I attached the code of areaMod.f90 in case.
Hi, this issue has been resolved! If anyone is interested in it, please go to https://community.intel.com/t5/Intel-Fortran-Compiler/error-5082-Syntax-error-found-END-OF-STATEMENT-when-expecting/m-p/1303903
Thanks for reaching out to us.
We are glad that your issue has been resolved. So, we are closing this thread. Please raise a new thread if you have any other questions, as this thread will no longer be monitored.