diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-01-31 15:39:17 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-01-31 15:39:17 +0000 |
commit | 615d1802c030bde9cfd70e85d3f163287bd3ebc1 (patch) | |
tree | cf41dba58aade03b495fc9aee9e400ce1e93476c /gcc/ada/exp_ch9.adb | |
parent | 3fc9e843ec5f97c72309b3838363d9ef79cc1b40 (diff) | |
download | ppe42-gcc-615d1802c030bde9cfd70e85d3f163287bd3ebc1.tar.gz ppe42-gcc-615d1802c030bde9cfd70e85d3f163287bd3ebc1.zip |
2014-01-31 Robert Dewar <dewar@adacore.com>
* sem_ch4.adb: Minor reformatting.
2014-01-31 Robert Dewar <dewar@adacore.com>
* exp_ch2.adb: New calling sequence for Is_LHS.
* frontend.adb: Add call to Process_Deferred_References.
* lib-xref.ads, lib-xref.adb (Process_Deferred_References): New.
(Deferred_References): New table.
* sem_ch8.adb (Find_Direct_Name): Make deferred reference table
entries.
(Find_Expanded_Name): Ditto.
* sem_res.adb: New calling sequence for Is_LHS.
* sem_util.ads, sem_util.adb (Is_LHS): New calling sequence.
* sem_warn.adb: Call Process_Deferred_References before issuing
warnings.
2014-01-31 Tristan Gingold <gingold@adacore.com>
* exp_util.adb (Corresponding_Runtime_Package): Restrict the
use of System_Tasking_Protected_Objects_Single_Entry.
* exp_ch9.adb (Build_Simple_Entry_Call): Remove Mode parameter
of Protected_Single_Entry_Call.
(Expand_N_Timed_Entry_Call): Remove single_entry case.
* exp_disp.adb (Make_Disp_Asynchronous_Select_Body): Remove
single_entry case.
(Make_Disp_Timed_Select_Body): Likewise.
* rtsfind.ads (RE_Timed_Protected_Single_Entry_Call): Remove.
* s-tposen.adb (Send_Program_Error, PO_Do_Or_Queue): Remove
Self_Id parameter.
(Wakeup_Entry_Caller): Remove Self_ID and New_State parameters.
(Wait_For_Completion_With_Timeout): Remove.
(Protected_Single_Entry_Call): Remove Mode parameter
(always Simple_Call).
(Service_Entry): Remove Self_Id constant (not used anymore).
(Timed_Protected_Single_Entry_Call): Remove.
* s-tposen.ads (Timed_Protected_Single_Entry_Call): Remove.
(Protected_Single_Entry_Call): Remove Mode parameter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207349 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_ch9.adb')
-rw-r--r-- | gcc/ada/exp_ch9.adb | 34 |
1 files changed, 6 insertions, 28 deletions
diff --git a/gcc/ada/exp_ch9.adb b/gcc/ada/exp_ch9.adb index 0557995c563..078e8369fda 100644 --- a/gcc/ada/exp_ch9.adb +++ b/gcc/ada/exp_ch9.adb @@ -4682,12 +4682,10 @@ package body Exp_Ch9 is -- family index expressions are evaluated before the entry -- parameters. - if Abort_Allowed - or else Restriction_Active (No_Entry_Queue) = False - or else not Is_Protected_Type (Conctyp) - or else Number_Entries (Conctyp) > 1 - or else (Has_Attach_Handler (Conctyp) - and then not Restricted_Profile) + if not Is_Protected_Type (Conctyp) + or else + Corresponding_Runtime_Package (Conctyp) = + System_Tasking_Protected_Objects_Entries then X := Make_Defining_Identifier (Loc, Name_uX); @@ -4902,8 +4900,7 @@ package body Exp_Ch9 is when System_Tasking_Protected_Objects_Single_Entry => -- Protected_Single_Entry_Call ( -- Object => po._object'Access, - -- Uninterpreted_Data => P'Address; - -- Mode => Simple_Call); + -- Uninterpreted_Data => P'Address); Call := Make_Procedure_Call_Statement (Loc, @@ -4914,8 +4911,7 @@ package body Exp_Ch9 is Make_Attribute_Reference (Loc, Attribute_Name => Name_Unchecked_Access, Prefix => Parm1), - Parm3, - New_Reference_To (RTE (RE_Simple_Call), Loc))); + Parm3)); when others => raise Program_Error; @@ -12481,24 +12477,6 @@ package body Exp_Ch9 is (RTE (RE_Timed_Protected_Entry_Call), Loc), Parameter_Associations => Params)); - when System_Tasking_Protected_Objects_Single_Entry => - Param := First (Params); - while Present (Param) - and then not - Is_RTE (Etype (Param), RE_Protected_Entry_Index) - loop - Next (Param); - end loop; - - Remove (Param); - - Rewrite (Call, - Make_Procedure_Call_Statement (Loc, - Name => - New_Reference_To - (RTE (RE_Timed_Protected_Single_Entry_Call), Loc), - Parameter_Associations => Params)); - when others => raise Program_Error; end case; |