program t
use iso_fortran_env, only: qp => real128
implicit none
real(qp), parameter :: const = 2.0_qp
complex(qp), parameter :: cone = (1.0_qp,0.0_qp)
complex(qp), parameter :: a = const*cone ! ifx ICE
complex(qp), parameter :: b = cone ! no ICE
print *, a
end program
The bug is caused by the 128-bit arithmetic operation (const*cone), and does not appear in case of simple assignment
I see the ICE in 2024.1 and 2024.0 ifx versions.
I just tested an early build of 2024.2, which is not public and there is no ICE.
So this bug will be fixed once 2024.2 is released, roughly early July 2024. We have reworked some of the initialization code for 2024.2, no doubt this fixed the issue.
thanks for bringing this to my attention.