diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-01-03 15:37:33 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-01-03 15:37:33 +0000 |
commit | 726ace2b071657807c0e35a969d6bbbb1ea21533 (patch) | |
tree | 5e000a55efc0822988383d971a8b00fa7a96fab1 /gcc/ada/s-parint.ads | |
parent | d6cba86091d59e81c87f2eb8e95dd5e07037bf4b (diff) | |
download | gcc-726ace2b071657807c0e35a969d6bbbb1ea21533.tar.gz |
* exp_dist.adb:
Declare subprogram index in Build_RPC_Receiver_Body, to reduce the
amount of PCS-specific code in RACW stubs generation.
(Copy_Specification): Set Etype on copied formal parameter entities, as
this information is needed for PolyORB stubs generation.
(PolyORB_Support.Build_Subprogram_Receiving_Stubs): Remove unused
variable Dynamic_Async.
(Build_Subprogram_Receiving_Stubs): Make PCS-specific
(Build_RPC_Receiver_Specification): Make generic again, as recent
changes have allowed RPC receivers to have the same profile for both
variants of the PCS.
Reorganise RPC receiver generation to reduce differences between the
structure of GARLIC and PolyORB RPC receivers.
(Add_Receiving_Stubs_To_Declarations): Make this subprogram
PCS-specific.
Simplify elaboration code for RCI packages.
* s-parint.ads, s-parint.adb, rtsfind.ads: Reorganise RPC receiver
generation to reduce differences between the structure of GARLIC and
PolyORB RPC receivers.
* s-stratt.adb: Fix typo in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@92837 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/s-parint.ads')
-rw-r--r-- | gcc/ada/s-parint.ads | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/gcc/ada/s-parint.ads b/gcc/ada/s-parint.ads index e1dab339172..2216514c72d 100644 --- a/gcc/ada/s-parint.ads +++ b/gcc/ada/s-parint.ads @@ -35,6 +35,7 @@ -- an appropriate WITH, and the interface can be expected to remain stable. with Ada.Exceptions; +with Ada.Streams; with Interfaces; with System.RPC; @@ -89,6 +90,20 @@ package System.Partition_Interface is -- Do not change its definition or its layout without updating -- Exp_Dist.Build_Remote_Supbrogram_Proxy_Type. + -- The Request_Access type is used for communication between the PCS + -- and the RPC receiver generated by the compiler: it contains all the + -- necessary information for the receiver to process an incoming call. + + type RST_Access is access all Ada.Streams.Root_Stream_Type'Class; + type Request_Access is record + Params : RST_Access; + -- A stream describing the called subprogram and its parameters + + Result : RST_Access; + -- A stream where the result, raised exception, or out values, + -- are marshalled. + end record; + procedure Check (Name : Unit_Name; Version : String; @@ -131,9 +146,10 @@ package System.Partition_Interface is pragma No_Return (Raise_Program_Error_Unknown_Tag); -- Raise Program_Error with the same message as E one + type RPC_Receiver is access procedure (R : Request_Access); procedure Register_Receiving_Stub (Name : Unit_Name; - Receiver : RPC.RPC_Receiver; + Receiver : RPC_Receiver; Version : String := ""; Subp_Info : System.Address; Subp_Info_Len : Integer); |