error #7416: Fortran 2008 does not allow this intrinsic procedure. [THIS_IMAGE]

error #7416: Fortran 2008 does not allow this intrinsic procedure. [THIS_IMAGE]

Аватар пользователя Anton S.

$ mpif90 --version
ifort (IFORT) 14.0.0 20130728
Copyright (C) 1985-2013 Intel Corporation. All rights reserved.

$ mpif90 -c -coarray=distributed -free -fPIC -stand f08 -warn all -warn stderrors cgca_m2alloc.f90
cgca_m2alloc.f90(97): error #7416: Fortran 2008 does not allow this intrinsic procedure. [THIS_IMAGE]
write (*,'(a,i0)') "ERROR in cgca_as: image: ", this_image()
-------------------------------------------------^
cgca_m2alloc.f90(100): error #6477: Fortran 2008 does not allow this statement or directive.
error stop
-^

The relevant code fragment is:

96 if (errstat .ne. 0) then
97 write (*,'(a,i0)') "ERROR in cgca_as: image: ", this_image()
98 write (*,'(a)') "ERROR in cgca_as: cannot allocate coarray"
99 write (*,'(a,i0)') "ERROR in cgca_as: error code: ", errstat
100 error stop
101 end if

If I remove "-stand f08 -warn stderrors", then the code compiles fine.

This is clearly wrong. What's going on?

Thanks

Anton

2 posts / 0 новое
Последнее сообщение
Пожалуйста, обратитесь к странице Уведомление об оптимизации для более подробной информации относительно производительности и оптимизации в программных продуктах компании Intel.
Аватар пользователя Lorri Menard (Intel)

Yes, this is a bug; we were incorrectly giving standards warning for F2008 features.  You can keep your -stand f08 switch, but remove the  warn stderrors one, which turns standards warnings into errors (and stops the compilation process).

               --Lorri

Зарегистрируйтесь, чтобы оставить комментарий.