- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello
I am trying to build a software (WRF-HYDRO) with the 2025 version of the fortran compiler. One file io_manager.f90 (See attached files) causes an internal error.
In previous versions of OneAPI I used IFORT (instead of IFX) and it went through. Now IFORT is no more available in the new version.
Any help on how to solve the problem or find a workaround would really be appreciated. The compiler crashes when trying to allocate.
best
jac
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hi
Thanks for the clarification
I proceeded as suggested and now it compiles
best
jac
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I would look at that but there are module dependencies (netcdf) that are not included. An example that is self contained would get more response if that is easy to do.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
Sorry for that
in a more generic way, IFX issues an internal compilation error in the following case
if I declare an object
class(class_type), allocatable :: class_name
the compilation error is issued when I try to allocate
allocate(class_name)
best
jac
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ran into similar internal errors with OneAPI 2025 and it seems a bit unstable right now. Faced this while testing llamacpp too. It maybe worth checking compiler flags.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
>>It is not legal to allocate an instance if an abstract type
If the object you are trying to allocate is and abstract class, then your allocate statement will require a type specification:
ALLOCATE ([type::] object[(s-spec[, s-spec]...)] [, object[(s-spec[, s-spec]...)] ]... [[coarray-spec]]...[, alloc-opt[, alloc-opt]...])
type | Is a data type specifier. If specified, the kind type parameters of each object must be the same as the corresponding type parameter values, and each object must be type compatible with the specified type. |
At least this is my read of the reference manual.
Jim Dempsey
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If the usage is invalid (and the one Andrew mention is), an ICE is still a compiler bug.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, in which case you are no longer allocating an instance of abstract type, as you must specify a non-abstract extension of the base type.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hi
Thanks for the clarification
I proceeded as suggested and now it compiles
best
jac

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