summaryrefslogtreecommitdiffstats
path: root/gcc/ada/sinfo.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-05 14:29:43 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-05 14:29:43 +0000
commit81b424acb24cb12818bca93206e80e9476919f75 (patch)
treee4f47a16c8f93fc574f67b26cbcf1e9166278c08 /gcc/ada/sinfo.ads
parentbe4a23205384709f2139798638ed273fa5c0da86 (diff)
downloadppe42-gcc-81b424acb24cb12818bca93206e80e9476919f75.tar.gz
ppe42-gcc-81b424acb24cb12818bca93206e80e9476919f75.zip
2011-08-05 Bob Duff <duff@adacore.com>
* sinfo.ads, sinfo.adb (Subpool_Handle_Name): New attribute for subpools. * par-ch4.adb (P_Allocator): Parse new subpool specification syntax. 2011-08-05 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Try_Container_Indexing): New procedure to implement the general indexing aspects of Ada2012. Called when analyzing indexed components when other interpretations fail. * sem_ch8.adb (Find_Direct_Name): check for implicit dereference only in an expression context where overloading is meaningful. This excludes the occurrence in an aspect specification (efficiency only). * sem_attr.adb (Analyze_Attribute): indicate that the attributes related to iterators can be set by an attribute specification, but cannot be queried. * sem_ch13.adb (Analyze_Aspect_Specifications): handle Constant_Indexing and Variable_Indexing. (Check_Indexing_Functions): New procedure to perform legality checks. Additional semantic checks at end of declarations. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177446 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sinfo.ads')
-rw-r--r--gcc/ada/sinfo.ads18
1 files changed, 16 insertions, 2 deletions
diff --git a/gcc/ada/sinfo.ads b/gcc/ada/sinfo.ads
index c9e051283e2..eca688af230 100644
--- a/gcc/ada/sinfo.ads
+++ b/gcc/ada/sinfo.ads
@@ -3933,14 +3933,20 @@ package Sinfo is
--------------------
-- ALLOCATOR ::=
- -- new [NULL_EXCLUSION] SUBTYPE_INDICATION | new QUALIFIED_EXPRESSION
+ -- new [SUBPOOL_SPECIFICATION] SUBTYPE_INDICATION
+ -- | new [SUBPOOL_SPECIFICATION] QUALIFIED_EXPRESSION
+ --
+ -- SUBPOOL_SPECIFICATION ::= (subpool_handle_NAME)
-- Sprint syntax (when storage pool present)
-- new xxx (storage_pool = pool)
+ -- or
+ -- new (subpool) xxx (storage_pool = pool)
-- N_Allocator
-- Sloc points to NEW
-- Expression (Node3) subtype indication or qualified expression
+ -- Subpool_Handle_Name (Node4) (set to Empty if not present)
-- Storage_Pool (Node1-Sem)
-- Procedure_To_Call (Node2-Sem)
-- Null_Exclusion_Present (Flag11)
@@ -8911,6 +8917,9 @@ package Sinfo is
function Storage_Pool
(N : Node_Id) return Node_Id; -- Node1
+ function Subpool_Handle_Name
+ (N : Node_Id) return Node_Id; -- Node4
+
function Strval
(N : Node_Id) return String_Id; -- Str3
@@ -9880,6 +9889,9 @@ package Sinfo is
procedure Set_Storage_Pool
(N : Node_Id; Val : Node_Id); -- Node1
+ procedure Set_Subpool_Handle_Name
+ (N : Node_Id; Val : Node_Id); -- Node4
+
procedure Set_Strval
(N : Node_Id; Val : String_Id); -- Str3
@@ -10656,7 +10668,7 @@ package Sinfo is
(1 => False, -- Storage_Pool (Node1-Sem)
2 => False, -- Procedure_To_Call (Node2-Sem)
3 => True, -- Expression (Node3)
- 4 => False, -- unused
+ 4 => True, -- Subpool_Handle_Name (Node4)
5 => False), -- Etype (Node5-Sem)
N_Null_Statement =>
@@ -11997,6 +12009,7 @@ package Sinfo is
pragma Inline (Statements);
pragma Inline (Static_Processing_OK);
pragma Inline (Storage_Pool);
+ pragma Inline (Subpool_Handle_Name);
pragma Inline (Strval);
pragma Inline (Subtype_Indication);
pragma Inline (Subtype_Mark);
@@ -12316,6 +12329,7 @@ package Sinfo is
pragma Inline (Set_Statements);
pragma Inline (Set_Static_Processing_OK);
pragma Inline (Set_Storage_Pool);
+ pragma Inline (Set_Subpool_Handle_Name);
pragma Inline (Set_Strval);
pragma Inline (Set_Subtype_Indication);
pragma Inline (Set_Subtype_Mark);
OpenPOWER on IntegriCloud