This makes the compiler emit debugging information for the Type-Specific
Data object generated for tagged types, so as to make sure that debugging
information is emitted for its type in ell circumstances.

Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

        * exp_disp.adb (Make_DT): Copy the Needs_Debug_Info flag from the
        type onto the TSD object.
diff --git a/gcc/ada/exp_disp.adb b/gcc/ada/exp_disp.adb
--- a/gcc/ada/exp_disp.adb
+++ b/gcc/ada/exp_disp.adb
@@ -5703,6 +5703,11 @@ package body Exp_Disp is
 
       Set_Is_True_Constant (TSD, Building_Static_DT (Typ));
 
+      --  The debugging information for type Ada.Tags.Type_Specific_Data is
+      --  needed by the debugger in order to display values of tagged types.
+
+      Set_Needs_Debug_Info (TSD, Needs_Debug_Info (Typ));
+
       --  Initialize or declare the dispatch table object
 
       if not Has_DT (Typ) then


Reply via email to