Commit 78cef47f by Arnaud Charlet

[multiple changes]

2015-10-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Loop_Statement): Attach generated loop
	identifier to the tree, because it may be the root of a tree
	traversal in Pop_Scope when freeze actions are pending.

2015-10-20  Steve Baird  <baird@adacore.com>

	* pprint.ads (Expression_Image) Add new generic formal flag
	Hide_Parameter_Blocks.
	* pprint.adb (Expression_Image) If new flag is set, then display
	dereferences of parameter block components accordingly.

From-SVN: r229068
parent e5f2c03c
2015-10-20 Ed Schonberg <schonberg@adacore.com> 2015-10-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch5.adb (Analyze_Loop_Statement): Attach generated loop
identifier to the tree, because it may be the root of a tree
traversal in Pop_Scope when freeze actions are pending.
2015-10-20 Steve Baird <baird@adacore.com>
* pprint.ads (Expression_Image) Add new generic formal flag
Hide_Parameter_Blocks.
* pprint.adb (Expression_Image) If new flag is set, then display
dereferences of parameter block components accordingly.
2015-10-20 Ed Schonberg <schonberg@adacore.com>
* sem_prag.adb: Code clean up. * sem_prag.adb: Code clean up.
2015-10-20 Hristian Kirtchev <kirtchev@adacore.com> 2015-10-20 Hristian Kirtchev <kirtchev@adacore.com>
......
...@@ -46,6 +46,10 @@ package Pprint is ...@@ -46,6 +46,10 @@ package Pprint is
-- nodes -- nodes
-- ??? Expand_Type argument should be removed -- ??? Expand_Type argument should be removed
Hide_Parameter_Blocks : Boolean := False;
-- If true, then "Parameter_Block.Field_Name.all" is
-- instead displayed as "Field_Name".
function Expression_Image function Expression_Image
(Expr : Node_Id; (Expr : Node_Id;
Default : String) return String; Default : String) return String;
......
...@@ -3217,12 +3217,15 @@ package body Sem_Ch5 is ...@@ -3217,12 +3217,15 @@ package body Sem_Ch5 is
-- Case of no identifier present. Create one and attach it to the -- Case of no identifier present. Create one and attach it to the
-- loop statement for use as a scope and as a reference for later -- loop statement for use as a scope and as a reference for later
-- expansions. Indicate that the label does not come from source. -- expansions. Indicate that the label does not come from source,
-- and attach it to the loop statement so it is part of the tree,
-- even without a full declaration.
else else
Ent := New_Internal_Entity (E_Loop, Current_Scope, Loc, 'L'); Ent := New_Internal_Entity (E_Loop, Current_Scope, Loc, 'L');
Set_Etype (Ent, Standard_Void_Type); Set_Etype (Ent, Standard_Void_Type);
Set_Identifier (N, New_Occurrence_Of (Ent, Loc)); Set_Identifier (N, New_Occurrence_Of (Ent, Loc));
Set_Parent (Ent, N);
Set_Has_Created_Identifier (N); Set_Has_Created_Identifier (N);
end if; end if;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment