summaryrefslogtreecommitdiffstats
path: root/gcc/ada/exp_ch9.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2014-01-31 15:39:17 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2014-01-31 15:39:17 +0000
commit615d1802c030bde9cfd70e85d3f163287bd3ebc1 (patch)
treecf41dba58aade03b495fc9aee9e400ce1e93476c /gcc/ada/exp_ch9.adb
parent3fc9e843ec5f97c72309b3838363d9ef79cc1b40 (diff)
downloadppe42-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.adb34
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;
OpenPOWER on IntegriCloud