[Ada] Fix repeated generation of dispatch tables in CodePeer mode
authorPiotr Trojanek <trojanek@adacore.com>
Fri, 25 Jun 2021 10:45:57 +0000 (12:45 +0200)
committerPierre-Marie de Rodat <derodat@adacore.com>
Mon, 20 Sep 2021 12:31:33 +0000 (12:31 +0000)
gcc/ada/

* exp_disp.adb (Make_DT): Move call to Set_Has_Dispatch_Table,
so it is executed regardless of the Generate_SCIL mode.

gcc/ada/exp_disp.adb

index 4db883c..647068f 100644 (file)
@@ -6610,7 +6610,6 @@ package body Exp_Disp is
       Append_Elmt (DT, DT_Decl);
 
       Analyze_List (Result, Suppress => All_Checks);
-      Set_Has_Dispatch_Table (Typ);
 
       --  Mark entities containing dispatch tables. Required by the backend to
       --  handle them properly.
@@ -6643,6 +6642,8 @@ package body Exp_Disp is
 
    <<Leave_SCIL>>
 
+      Set_Has_Dispatch_Table (Typ);
+
       --  Register the tagged type in the call graph nodes table
 
       Register_CG_Node (Typ);