- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There is a regression with the Intel oneAPI 2024 Fortran compiler Intel(R) 64, Version 2021.12.0,
which had been working in 2021.10.0, and it also works with ifx (as well as gfortran and nagfor).
Compilation leads to an internal compiler error (ICE).
module m1
implicit none
private
type :: t1
integer, dimension(:), allocatable :: flst
integer :: n_in = 0
end type t1
type :: t2
type(t1), dimension(:), allocatable :: tt
integer :: n_in = 0
contains
procedure :: s1 => t2_s1
end type t2
contains
subroutine t2_s1 (rt, ttt)
class(t2), intent(in) :: rt
type(t1), intent(out), dimension(:), allocatable :: ttt
integer :: n_real
integer :: i_real
n_real = size (rt%tt)
allocate (ttt (0))
do i_real = 1, n_real
call s3 (i_real, ttt)
end do
contains
subroutine s3 (i_real, ttt)
integer, intent(in) :: i_real
type(t1), intent(inout), dimension(:), allocatable :: ttt
type(t1) :: ttt_tmp
associate (tt => rt%tt(i_real))
ttt_tmp = s2 (tt, rt%n_in)
ttt = [ttt, ttt_tmp]
end associate
end subroutine s3
end subroutine t2_s1
function s2 (flv1, n_in) result(flv2)
type(t1), intent(in) :: flv1
integer, intent(in) :: n_in
type(t1) :: flv2
integer :: n
n = size (flv1%flst)
allocate (flv2%flst (n))
flv2%n_in = n_in
end function s2
end module m1
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I can confirm that this has indeed been fixed in oneAPI 24.2 with ifort 2021.13.0. However, there is a new or additional regression, which I have reported here:
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Juergen_R_R,
Well, at least with:
$ ifx --version
ifx (IFX) 2024.1.0 20240308
Copyright (C) 1985-2024 Intel Corporation. All rights reserved.
$ ifx -O2 -error-limit 4 -e03 -fimf-arch-consistency=true -fimf-precision=high -finline-functions -fp-model consistent -fpp -fpe-all=1 -ipo -mavx -mtune=generic -m64 -parallel-source-info=1 -qmkl -qopenmp -qopt-report=3 -standard-semantics -std18 -traceback -WB -warn all -xHost -c testcase-0207.f90
$
Regards,
Jorge.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, I already mentioned that it works with ifx. However, ifx still doesn't work fully with our software. That's the reason why we still have to rely on ifort
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@Juergen_R_R, I also get ICE with the current nightly build with ifort. Since it compiles ok with ifx, it will be hard to get a compiler engineer to look at it with all the other bug fixes going on. The plan is that the last release of ifort is mid 2024.
Do you know that you can mix and match object files and .mod files between ifx and ifort, unless you compile with -ipo? That may help you move along.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That is very bad news. I think, even 2021.11.0 was ok, so the regression must have happened pretty recently. As ifx still has some major problems and extrapolating from past experience, this means that we probably have to discard Intel compilers for 1-2 years until all the stuff is fixed. At the moment, I'm trying to isolate another problem, where ifx produces wrong code. Mixing code is no option as this cannot be automized.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I did some poking around. The ifort ICE you reported is a duplicate of another bug. Look for the ICE to melt in 2024.2 available in mid-2024!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Barbara, that's great news!! A lot of motivation to invest into debugging for me and my team!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I can confirm that this has indeed been fixed in oneAPI 24.2 with ifort 2021.13.0. However, there is a new or additional regression, which I have reported here:

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