diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-08-04 10:03:31 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-08-04 10:03:31 +0000 |
commit | ac5f5168a974437091584b6b55f06c5abc920f72 (patch) | |
tree | 8573ab03acf640bc3322d78ca3cb883e6c81a7b9 /gcc/ada/exp_ch3.adb | |
parent | f38e6bcb032e833ce170dfacfe59ec74026cb8f6 (diff) | |
download | gcc-ac5f5168a974437091584b6b55f06c5abc920f72.tar.gz |
2014-08-04 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch3.adb (Build_CPP_Init_Procedure): Remove
Flag_Decl. Do not analyze the declaration of the flag as it is
not part of the tree yet, instead add it to the freeze actions
of the C++ type.
2014-08-04 Robert Dewar <dewar@adacore.com>
* checks.adb (Apply_Scalar_Range_Check): Make sure we handle
case of OUT and IN OUT parameter correctly (where Source_Typ is
set), we were missing one case where a check must be applied.
2014-08-04 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch8.adb (Build_Class_Wide_Wrapper): Update the comment on
the generated code. Instead of hiding the renaming and using the
wrapper as the proper association, have the subprogram renaming
alias the wrapper.
(Build_Spec): The entity of the wrapper is
now derived from the entity of the related primitive.
2014-08-04 Emmanuel Briot <briot@adacore.com>
* s-regpat.adb: s-regpat.adb (Parse): fix incorrect link when
using non-capturing groups.
2014-08-04 Ed Schonberg <schonberg@adacore.com>
* inline.adb (Build_Body_To_Inline): Remove Unmodified and
related pragmas before copying the original body, to prevent
spurious errors when the pragmas apply to formals that will not
appear in the inlined body.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213554 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_ch3.adb')
-rw-r--r-- | gcc/ada/exp_ch3.adb | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/gcc/ada/exp_ch3.adb b/gcc/ada/exp_ch3.adb index 503b374dcb4..6eec78a4732 100644 --- a/gcc/ada/exp_ch3.adb +++ b/gcc/ada/exp_ch3.adb @@ -2203,7 +2203,6 @@ package body Exp_Ch3 is Body_Node : Node_Id; Body_Stmts : List_Id; Flag_Id : Entity_Id; - Flag_Decl : Node_Id; Handled_Stmt_Node : Node_Id; Init_Tags_List : List_Id; Proc_Id : Entity_Id; @@ -2235,19 +2234,16 @@ package body Exp_Ch3 is Flag_Id := Make_Temporary (Loc, 'F'); - Flag_Decl := + Append_Freeze_Action (Rec_Type, Make_Object_Declaration (Loc, Defining_Identifier => Flag_Id, Object_Definition => New_Occurrence_Of (Standard_Boolean, Loc), Expression => - New_Occurrence_Of (Standard_True, Loc)); - - Analyze (Flag_Decl); - Append_Freeze_Action (Rec_Type, Flag_Decl); + New_Occurrence_Of (Standard_True, Loc))); Body_Stmts := New_List; - Body_Node := New_Node (N_Subprogram_Body, Loc); + Body_Node := New_Node (N_Subprogram_Body, Loc); Proc_Spec_Node := New_Node (N_Procedure_Specification, Loc); @@ -2262,7 +2258,7 @@ package body Exp_Ch3 is Set_Parameter_Specifications (Proc_Spec_Node, New_List); Set_Specification (Body_Node, Proc_Spec_Node); - Set_Declarations (Body_Node, New_List); + Set_Declarations (Body_Node, New_List); Init_Tags_List := Build_Inherit_CPP_Prims (Rec_Type); |