- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear users,
I suspect there is a bug in the Intel Fortran compiler (19.1.1.217 20200306).
I found out there has been an unsual warning popping up as, for good practice, I changed my ISO_C_Binding declaration of
USE ISO_C_Binding, ONLY : C_DOUBLE_COMPLEX
to
USE, INTRINSIC :: ISO_C_Binding, ONLY : C_DOUBLE_COMPLEX
which yielded the following warning
mod_parameters.F90(8): warning #8893: The procedure used from a standard intrinsic module is not a standard intrinsic module procedure. [C_DOUBLE_COMPLEX]
whereas that variable is definitely included in ISO_C_Binding.
Sorry if I can't provide more information, as the warning does not appear with a simple minimal working example, where C_DOUBLE_COMPLEX imported either in a module or directly in the main program. The warning does not appear with gfortran-9 or the NAG compiler with aggressive debug flags.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I believe I have had the same issue as you, I reported it to Intel Support as issue 04649346.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
For the record, the warning does not appear with ifort 19.0.4.243 20190416
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is still an issue in ifort 2021.3; for some reason, my support issue 04649346 was closed without comment.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you have a simple reproducer you can post? To be able to fix something being able to reproduce the problem is a huge first step.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Your case should not have been closed. The issue has not been fixed. I re-opened 04649346.
One of the Fortran developers writes, "There is a workaround. Remove the only clause and it compiles without warnings."
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Andrew - I did have a simple reproducer attached to the support issue. I can attach it here if you want?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here you go:
module m
use, intrinsic :: iso_c_binding
end module
program XE2020U1_2
! Compile with /stand:f18 -> warning #8893
use, intrinsic :: iso_c_binding, only: c_form_feed
use m
implicit none
! Body of XE2020U1_2
Write(*,"(a)") c_form_feed
end program XE2020U1_2
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is a workround for this - add a private iso_c_binding statement to module m so that its entities aren't exported.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page