From: Eric Botcazou <ebotca...@adacore.com> This happens when the discriminants of the record type have default values.
gcc/ada/ChangeLog: * inline.adb (Expand_Inlined_Call): In the case of a function call that returns an unconstrained type and initializes an object, set the No_Initialization flag on the new declaration of the object. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/inline.adb | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/ada/inline.adb b/gcc/ada/inline.adb index db8b4164e87..4e8d0f1bb74 100644 --- a/gcc/ada/inline.adb +++ b/gcc/ada/inline.adb @@ -4157,6 +4157,7 @@ package body Inline is Object_Definition => New_Copy_Tree (Object_Definition (Parent (Targ1)))); Replace_Formals (Decl); + Set_No_Initialization (Decl); Rewrite (Parent (N), Decl); Analyze (Parent (N)); -- 2.40.0