Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28924 Discussions

ifx 2024.0 internal compiler error / internal abort when using custom types

sebr
Beginner
420 Views

Hello everyone,

I repeatedly get an internal compiler error when compiling one of our software projects using ifx (oneAPI 2024.0):

O:\Fortran\fhex\src\main\eval.f90(74): error #5623: **Internal compiler error: internal abort** Please report this error along with the circumstances in which it occurred in a Software Problem Report.  Note: File and line given may not be explicit cause of this error.
                res(ii)%T=bc(ii)%Tin
----------------^
compilation aborted for CMakeFiles\fhex.dir\src\main\eval.f90-pp.f90 (code 3)

The problem seems to be the use of the derived types res and bc, which have the following simplified structure:

type result_set
    real(kind=dp), dimension(:), allocatable :: T ! has more variables [...]
    logical :: isallocated
    contains
        procedure, public :: alloc => alloc_resultvars
        procedure, public :: free => free_result_set
end type result_set
type boundary_conditions
    real(kind=dp)  :: Tin
    contains
        procedure, public :: init => init_bc
end type boundary_conditions

Both types are used as arrays and are used as such in the relevant call:

function evalH(bc, [...]) result(res)
    [...]
    type(boundary_conditions), dimension(2), intent(in) :: bc
    type(result_set), dimension(2) :: res
    [...]
     res(ii)%T=bc(ii)%Tin ! within a loop
    [...]
end function evalH

 Build scripts are generated using cmake 3.28.3 with ninja as generator on Windows 10.
The whole thing runs smoothly using Ifort.

Nevertheless, it would be nice if anyone can provide a solution as we want to switch to ifx step by step.


Best Regards
Sebastian

Labels (2)
0 Kudos
1 Reply
Barbara_P_Intel
Employee
385 Views

@sebr, can you please post eval.f90 and any other source files required to reproduce the ICE (internal compiler error)? It's difficult to do much with the code snips you provided.

Thank you.

 

0 Kudos
Reply