https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59234

--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Eric Botcazou <[email protected]>:

https://gcc.gnu.org/g:84d9fde22d5e6f0d62d76cf3a6f8c6d973ff2442

commit r16-4680-g84d9fde22d5e6f0d62d76cf3a6f8c6d973ff2442
Author: Eric Botcazou <[email protected]>
Date:   Tue Oct 28 10:13:35 2025 +0100

    Ada: Fix instantiation failure for package with formal package parameters

    The problem occurs for a generic package with a formal package parameter
    that contains a nested generic package used in the instantiation of another
    generic package with two formal package parameters.

    It turns out that the mapping between formals and actuals for the latter
two
    formal package parameters done by Map_Formal_Package_Entities is blocked by
    the presence of the first formal package parameter, more precisely by the
    special name built for the formal in the parent of a child unit.  The fix
    is just to set the Is_Internal flag on this special name.

    gcc/ada/
            PR ada/59234
            * sem_ch12.adb (Analyze_Formal_Package_Declaration): Mark the
            special name built for the formal in the parent of a child unit
            as internal.

    gcc/testsuite/
            * gnat.dg/specs/generic_inst5.ads: New test.
            * gnat.dg/specs/generic_inst5_pkg1.ads: New helper.
            * gnat.dg/specs/generic_inst5_pkg2.ads: Likewise.
  • [Bug ada/59234] instantiation f... cvs-commit at gcc dot gnu.org via Gcc-bugs

Reply via email to