[Ada] Fix internal error on subprogram instantiation
Commit Message
The compiler builds renamings for actuals of formal objects for debugging
purposes in this case, but it must not generate them for temporaries.
Tested on x86_64-pc-linux-gnu, committed on trunk
gcc/ada/
* exp_dbug.ads (Build_Subprogram_Instance_Renamings): Fix typo.
* exp_dbug.adb (Build_Subprogram_Instance_Renamings): Build the
renaming only for actuals of formal objects.
@@ -1028,6 +1028,7 @@ package body Exp_Dbug is
E := First_Entity (Wrapper);
while Present (E) loop
if Nkind (Parent (E)) = N_Object_Declaration
+ and then Present (Corresponding_Generic_Association (Parent (E)))
and then Is_Elementary_Type (Etype (E))
then
Loc := Sloc (Expression (Parent (E)));
@@ -1444,7 +1444,7 @@ package Exp_Dbug is
-- placed within the wrapper package of the instance, and the entity in
-- these declarations is encoded in a complex way that GDB does not handle
-- well. These new renaming declarations appear within the body of the
- -- subprogram, and are redundant from a visibility point of view, but They
+ -- subprogram, and are redundant from a visibility point of view, but they
-- should have no measurable performance impact, and require no special
-- decoding in the debugger.