summaryrefslogtreecommitdiff
path: root/gcc/ada/einfo.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2015-05-22 12:50:35 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2015-05-22 12:50:35 +0000
commit005366f73940ec02cd9d74d82e61ad390e2130eb (patch)
treee30d8fa127f2a8d0f8e2223bd9662d6dc7888059 /gcc/ada/einfo.adb
parent0131155887c89c985954d139c31a92422997f165 (diff)
downloadgcc-005366f73940ec02cd9d74d82e61ad390e2130eb.tar.gz
2015-05-22 Eric Botcazou <ebotcazou@adacore.com>
* sprint.adb (Source_Dump): When generating debug files, deal with the case of a stand-alone package instantiation by dumping together the spec and the body in the common debug file. 2015-05-22 Robert Dewar <dewar@adacore.com> * sem_ch13.adb (Minimum_Size): Size is zero for null range discrete subtype. 2015-05-22 Hristian Kirtchev <kirtchev@adacore.com> * einfo.adb (Anonymous_Master): This attribute now applies to package and subprogram bodies. (Set_Anonymous_Master): This attribute now applies to package and subprogram bodies. (Write_Field36_Name): Add output for package and subprogram bodies. * einfo.ads Update the documentation on attribute Anonymous_Master along with occurrences in entities. * exp_ch4.adb (Create_Anonymous_Master): Reimplemented to handle spec and body anonymous masters of the same unit. (Current_Anonymous_Master): Reimplemented. Handle a package instantiation that acts as a compilation unit. (Insert_And_Analyze): Reimplemented. 2015-05-22 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_With_Clause): A limited_with_clause on a predefined unit is treated as a regular with_clause. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223557 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/einfo.adb')
-rw-r--r--gcc/ada/einfo.adb16
1 files changed, 13 insertions, 3 deletions
diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb
index bcbf20f5409..9b7cced24cb 100644
--- a/gcc/ada/einfo.adb
+++ b/gcc/ada/einfo.adb
@@ -757,7 +757,11 @@ package body Einfo is
function Anonymous_Master (Id : E) return E is
begin
- pragma Assert (Ekind_In (Id, E_Function, E_Package, E_Procedure));
+ pragma Assert (Ekind_In (Id, E_Function,
+ E_Package,
+ E_Package_Body,
+ E_Procedure,
+ E_Subprogram_Body));
return Node36 (Id);
end Anonymous_Master;
@@ -3586,7 +3590,11 @@ package body Einfo is
procedure Set_Anonymous_Master (Id : E; V : E) is
begin
- pragma Assert (Ekind_In (Id, E_Function, E_Package, E_Procedure));
+ pragma Assert (Ekind_In (Id, E_Function,
+ E_Package,
+ E_Package_Body,
+ E_Procedure,
+ E_Subprogram_Body));
Set_Node36 (Id, V);
end Set_Anonymous_Master;
@@ -10141,7 +10149,9 @@ package body Einfo is
when E_Function |
E_Operator |
E_Package |
- E_Procedure =>
+ E_Package_Body |
+ E_Procedure |
+ E_Subprogram_Body =>
Write_Str ("Anonymous_Master");
when others =>