https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118208
Bug ID: 118208 Summary: sem_ch8 Program_Error. Product: gcc Version: 14.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: 00120260a at gmail dot com CC: dkm at gcc dot gnu.org Target Milestone: --- I can't provide more than the code and bug report. gcc -c -gnatX0 -gnatE -gnatd.n main2.adb /home/drm/.local/share/alire/toolchains/gnat_native_14.2.1_06bb3def/lib/gcc/x86_64-pc-linux-gnu/14.2.0/adainclude/system.ads main2.adb main2.ads +===========================GNAT BUG DETECTED==============================+ | 14.2.0 (x86_64-pc-linux-gnu) Program_Error sem_ch8.adb:5920 explicit raise| | Error detected at main2.adb:10:22 | | Compiling main2.adb | | Please submit a bug report; see https://gcc.gnu.org/bugs/ . | | Use a subject line meaningful to you and us to track the bug. | | Include the entire contents of this bug box in the report. | | Include the exact command that you entered. | | Also include sources listed below. | +==========================================================================+ package main2 is type Item (Degree : Natural := 0) is record Value: Float; end record; type ItemArray is array (Positive range 1..<>) of Item; type Poly is private; function Construct (N: ItemArray) return Poly; private type ItemLink; type ItemAccess is access all ItemLink; type ItemLink is record Next: ItemAccess; I: Item; end record; type Poly is record MaxDegree: Natural := 0; Sentinel: aliased ItemLink; end record; end main2; _________________ package body main2 is function Construct (N: ItemArray) return Poly is begin return P: Poly do declare Current: not null ItemAccess := P.Sentinel'Unrestricted_Access; begin for A of N loop Current.Next := new ItemLink'(null, A); Current := @.Next; end loop; end; end return; end Construct; end main2;