summaryrefslogtreecommitdiff
path: root/gcc/ada/sem_dist.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2004-11-19 10:56:15 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2004-11-19 10:56:15 +0000
commit98687f61db96abfad8b6c481cc11fb021df44680 (patch)
treeb1d269ec2053fab57cf79b39805a25548be5bd3f /gcc/ada/sem_dist.adb
parentcec58e186ae133c667539cc66f0cff7a32f59379 (diff)
downloadgcc-98687f61db96abfad8b6c481cc11fb021df44680.tar.gz
* exp_dist.adb (Build_RPC_Receiver_Body): New subprogram. This
procedures factors the common processing for building an RPC receiver for an RCI package or an RACW type. Stylistic cleanup: change '/= Empty' to 'Present ()'; move body of Build_Remote_Subprogram_Proxy_Type into proper alphabetical order. (Get_PCS_Name): New subprogram. Returns the name of the PCS currently in use. (Specific_Add_RACW_Features): New subprogram. PCS-specific part of Add_RACW_Features. (Specific_Add_RAST_Features): New subprogram. PCS-specific part of Add_RAST_Features. (Assign_Subprogram_Identifier): New subprogram. Provision for assigning distribution subprogram identifiers that are either subprogram numbers or strings. (Get_Subprogram_Ids): New subprogram. Retrieve both the numeric and string distribution identifiers assigned to a given subprogram. (Get_Subprogram_Id): Reimplement in terms of Get_Subprogram_Ids. (Add_RAS_Dereference_TSS): Add comments. (Build_General_Calling_Stubs): Note that the RACW_Type formal parameter is not referenced yet because it will be used by the PolyORB DSA implementation. (Insert_Partition_Check): Remove fossile code. (First_RCI_Subprogram_Id): Document this constant. (Add_RAS_Access_TSS): Correct the setting of the Etype of the RAS_Access TSS. (Get_Pkg_Name_String): Remove subprogram. Usage occurrences are replaced with calls to Get_Library_Unit_Name_String. Previously there were several instances of the same code in different locations in the compiler; this checkin completes the replacement of all of these instances with calls to a common subprogram. Minor reformatting. * sem_dist.adb: Remove comment noting that RPC receiver generation should be disabled for RACWs that implement RASs. (Process_Partition_Id): Use new subprogram Get_Library_Unit_Name_String. * sem_util.ads, sem_util.adb (Has_Stream): New function (Get_Library_Unit_Name_String): New subprogram to retrieve the fully qualified name of a library unit into the name buffer. (Note_Possible_Modification): Generate a reference only if the context comes from source. * snames.ads (PCS_Names): New subtype corresponding to names of supported implementations of the Partition Communication Subsystem (PCS) (i.e. the runtime library support modules for the distributed systems annex). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90903 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_dist.adb')
-rw-r--r--gcc/ada/sem_dist.adb18
1 files changed, 3 insertions, 15 deletions
diff --git a/gcc/ada/sem_dist.adb b/gcc/ada/sem_dist.adb
index 8314e6ca32f..c0fccfdc92a 100644
--- a/gcc/ada/sem_dist.adb
+++ b/gcc/ada/sem_dist.adb
@@ -43,7 +43,6 @@ with Snames; use Snames;
with Stand; use Stand;
with Stringt; use Stringt;
with Tbuild; use Tbuild;
-with Uname; use Uname;
package body Sem_Dist is
@@ -290,18 +289,10 @@ package body Sem_Dist is
end if;
-- Get and store the String_Id corresponding to the name of the
- -- library unit whose Partition_Id is needed
+ -- library unit whose Partition_Id is needed.
- Get_Unit_Name_String (Get_Unit_Name (Unit_Declaration_Node (Ety)));
-
- -- Remove seven last character ("(spec)" or " (body)").
- -- (this is a bit nasty, should have interface for this ???)
-
- Name_Len := Name_Len - 7;
-
- Start_String;
- Store_String_Chars (Name_Buffer (1 .. Name_Len));
- Prefix_String := End_String;
+ Get_Library_Unit_Name_String (Unit_Declaration_Node (Ety));
+ Prefix_String := String_From_Name_Buffer;
-- Build the function call which will replace the attribute
@@ -510,9 +501,6 @@ package body Sem_Dist is
Name_Class))));
Set_Is_Remote_Call_Interface (RACW_Type, Is_RCI);
Set_Is_Remote_Types (RACW_Type, Is_RT);
- -- ??? Object RPC receiver generation should be bypassed for this
- -- RACW type, since actually calls will be received by the package
- -- RPC receiver for the designated RCI subprogram.
Subpkg_Decl :=
Make_Package_Declaration (Loc,