summaryrefslogtreecommitdiff
path: root/gcc/ada/einfo.adb
diff options
context:
space:
mode:
authorbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2012-02-01 14:26:55 +0000
committerbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2012-02-01 14:26:55 +0000
commit4705bce74d161d13bd138f9da65faf1d2fb68114 (patch)
tree69c7ab67c6527d585904538106ededde7482383a /gcc/ada/einfo.adb
parente2f53049d9424e70ca71aeb9548b657649c6059f (diff)
downloadgcc-4705bce74d161d13bd138f9da65faf1d2fb68114.tar.gz
2012-02-01 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 183800 using svnmerge git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@183801 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/einfo.adb')
-rw-r--r--gcc/ada/einfo.adb48
1 files changed, 40 insertions, 8 deletions
diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb
index 4cbd4c5cb44..d5cbc22baec 100644
--- a/gcc/ada/einfo.adb
+++ b/gcc/ada/einfo.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2012, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -161,9 +161,10 @@ package body Einfo is
-- Body_Entity Node19
-- Corresponding_Discriminant Node19
+ -- Default_Aspect_Component_Value Node19
+ -- Default_Aspect_Value Node19
-- Extra_Accessibility_Of_Result Node19
-- Parent_Subtype Node19
- -- Related_Array_Object Node19
-- Size_Check_Code Node19
-- Spec_Entity Node19
-- Underlying_Full_View Node19
@@ -217,6 +218,7 @@ package body Einfo is
-- Debug_Renaming_Link Node25
-- DT_Offset_To_Top_Func Node25
-- PPC_Wrapper Node25
+ -- Related_Array_Object Node25
-- Static_Predicate List25
-- Task_Body_Procedure Node25
@@ -773,6 +775,18 @@ package body Einfo is
return Node25 (Id);
end Debug_Renaming_Link;
+ function Default_Aspect_Component_Value (Id : E) return N is
+ begin
+ pragma Assert (Is_Array_Type (Id));
+ return Node19 (Id);
+ end Default_Aspect_Component_Value;
+
+ function Default_Aspect_Value (Id : E) return N is
+ begin
+ pragma Assert (Is_Scalar_Type (Id));
+ return Node19 (Id);
+ end Default_Aspect_Value;
+
function Default_Expr_Function (Id : E) return E is
begin
pragma Assert (Is_Formal (Id));
@@ -2528,7 +2542,7 @@ package body Einfo is
function Related_Array_Object (Id : E) return E is
begin
pragma Assert (Is_Array_Type (Id));
- return Node19 (Id);
+ return Node25 (Id);
end Related_Array_Object;
function Related_Expression (Id : E) return N is
@@ -3262,6 +3276,18 @@ package body Einfo is
Set_Node25 (Id, V);
end Set_Debug_Renaming_Link;
+ procedure Set_Default_Aspect_Component_Value (Id : E; V : E) is
+ begin
+ pragma Assert (Is_Array_Type (Id));
+ Set_Node19 (Id, V);
+ end Set_Default_Aspect_Component_Value;
+
+ procedure Set_Default_Aspect_Value (Id : E; V : E) is
+ begin
+ pragma Assert (Is_Scalar_Type (Id));
+ Set_Node19 (Id, V);
+ end Set_Default_Aspect_Value;
+
procedure Set_Default_Expr_Function (Id : E; V : E) is
begin
pragma Assert (Is_Formal (Id));
@@ -5083,7 +5109,7 @@ package body Einfo is
procedure Set_Related_Array_Object (Id : E; V : E) is
begin
pragma Assert (Is_Array_Type (Id));
- Set_Node19 (Id, V);
+ Set_Node25 (Id, V);
end Set_Related_Array_Object;
procedure Set_Related_Expression (Id : E; V : N) is
@@ -8317,13 +8343,15 @@ package body Einfo is
when E_Discriminant =>
Write_Str ("Corresponding_Discriminant");
+ when Scalar_Kind =>
+ Write_Str ("Default_Value");
+
+ when E_Array_Type =>
+ Write_Str ("Default_Component_Value");
+
when E_Record_Type =>
Write_Str ("Parent_Subtype");
- when E_Array_Type |
- E_Array_Subtype =>
- Write_Str ("Related_Array_Object");
-
when E_Constant |
E_Variable =>
Write_Str ("Size_Check_Code");
@@ -8619,6 +8647,10 @@ package body Einfo is
E_Record_Subtype_With_Private =>
Write_Str ("Interfaces");
+ when E_Array_Type |
+ E_Array_Subtype =>
+ Write_Str ("Related_Array_Object");
+
when Task_Kind =>
Write_Str ("Task_Body_Procedure");