- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Consider the following minimal working example:
module lib
contains
subroutine f()
integer::a(1)
a=g([42])
contains
function g(x)
integer::x(:),y(SIZE(x)),g(SIZE(y)) ! compiler error
! but replacing SIZE(y) with SIZE(x) fixes the problem
g=x
end
end
end
program prog
use lib
end
Compilation of this code with (ifx 2023.1.0) fails with `error #5623: **Internal compiler error: internal abort**`. However, replacing `SIZE(y)` with `SIZE(x)` fixes the problem. This only happens if the function is inside a procedure.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@V-T, the internal compiler error (ICE) that you reported is gone in the latest release of ifx. This release was made available earlier this week.
Check it out!
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for reporting this ICE with such a small reproducer. Good to see you have a reasonable workaround.
I filed a bug report, CMPLRLLVM-48784. Will let you know when it's fixed.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@V-T, the internal compiler error (ICE) that you reported is gone in the latest release of ifx. This release was made available earlier this week.
Check it out!

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