https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113352
Bug ID: 113352 Summary: error: invalid prefix in selected component with overloaded subprogram. Product: gcc Version: 13.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: p.p11 at orange dot fr CC: dkm at gcc dot gnu.org Target Milestone: --- Created attachment 57051 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57051&action=edit Reproducer. Let's define: package Loggings is type Logging is tagged limited private; type Logging_Class is access all Logging'Class; function Handler return Logging_Class; procedure Handler (To : Logging_Class); procedure Log (Handler : Logging; Msg : String); private ... end Loggings; and declare: procedure My_Log_4 (Msg : String) is begin Loggings.Handler.Log (Msg); end; Result: % gcc -gnatv -c 2024/test_20240110_func_prefix.adb GNAT 13.2.0 Copyright 1992-2023, Free Software Foundation, Inc. Compiling: 2024/test_20240110_func_prefix.adb Source file time stamp: 2024-01-12 11:17:13 Compiled at: 2024-01-12 12:17:34 32. Loggings.Handler.Log (Msg); | >>> error: invalid prefix in selected component "Handler" Expected result: Function Handler should be selected instead of procedure Handler.