summaryrefslogtreecommitdiff
path: root/gcc/ada/atree.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-09 09:35:24 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-09 09:35:24 +0000
commitf301a57be311b6929347c09364cdc2ac05759729 (patch)
tree3ab08bc8a192f550642f5ccee3b8b0402ffdf1cf /gcc/ada/atree.adb
parentd70d22d5709ec81d325fa38c103db443d4c12d4a (diff)
downloadgcc-f301a57be311b6929347c09364cdc2ac05759729.tar.gz
2009-04-09 Javier Miranda <miranda@adacore.com>
* exp_disp.adb (Export_DT): Addition of a new argument (Index); used to retrieve from the Dispatch_Table_Wrappers list the external name. Addition of documentation. (Make_Secondary_DT): Addition of a new argument (Suffix_Index) that is used to export secondary dispatch tables (in the previous version of the frontend only primary dispatch tables were exported). Addition of documentation. (Import_DT): New subprogram (internal of Make_Tags). Used to import a dispatch table of a given tagged type. (Make_Tags): Modified to import secondary dispatch tables. * sem_ch3.adb (Analyze_Object_Declaration): Code cleanup. (Constant_Redeclaration): Code cleanup. * einfo.ads (Dispatch_Table_Wrapper): Renamed to Dispatch_Table_Wrappers. Update documentation. * einfo.adb (Dispatch_Table_Wrapper, Set_Dispatch_Table_Wrapper): Renamed to Dispatch_Table_Wrappers. * sem_util.adb (Collect_Interface_Components): Improve handling of private types. * atree.ads (Elist26, Set_Elist26): New subprograms * atree.adb (Elist26, Set_Elist26): New subprograms git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145811 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/atree.adb')
-rw-r--r--gcc/ada/atree.adb17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ada/atree.adb b/gcc/ada/atree.adb
index 67d8597997b..2c6a6e33b07 100644
--- a/gcc/ada/atree.adb
+++ b/gcc/ada/atree.adb
@@ -3305,6 +3305,17 @@ package body Atree is
end if;
end Elist25;
+ function Elist26 (N : Node_Id) return Elist_Id is
+ pragma Assert (Nkind (N) in N_Entity);
+ Value : constant Union_Id := Nodes.Table (N + 4).Field8;
+ begin
+ if Value = 0 then
+ return No_Elist;
+ else
+ return Elist_Id (Value);
+ end if;
+ end Elist26;
+
function Name1 (N : Node_Id) return Name_Id is
begin
pragma Assert (N <= Nodes.Last);
@@ -5422,6 +5433,12 @@ package body Atree is
Nodes.Table (N + 4).Field7 := Union_Id (Val);
end Set_Elist25;
+ procedure Set_Elist26 (N : Node_Id; Val : Elist_Id) is
+ begin
+ pragma Assert (Nkind (N) in N_Entity);
+ Nodes.Table (N + 4).Field8 := Union_Id (Val);
+ end Set_Elist26;
+
procedure Set_Name1 (N : Node_Id; Val : Name_Id) is
begin
pragma Assert (N <= Nodes.Last);