summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_ch3.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/exp_ch3.adb')
-rw-r--r--gcc/ada/exp_ch3.adb36
1 files changed, 12 insertions, 24 deletions
diff --git a/gcc/ada/exp_ch3.adb b/gcc/ada/exp_ch3.adb
index 0e703da2237..fdf3185cede 100644
--- a/gcc/ada/exp_ch3.adb
+++ b/gcc/ada/exp_ch3.adb
@@ -1704,6 +1704,18 @@ package body Exp_Ch3 is
end if;
end if;
+ -- When the object is either protected or a task, create static strings
+ -- which denote the names of entries and families. Associate the strings
+ -- with the concurrent object's Protection_Entries or ATCB. This is a
+ -- VMS Debug feature.
+
+ if OpenVMS_On_Target
+ and then Is_Concurrent_Type (Typ)
+ and then Entry_Names_OK
+ then
+ Build_Entry_Names (Id_Ref, Typ, Res);
+ end if;
+
return Res;
exception
@@ -2665,7 +2677,6 @@ package body Exp_Ch3 is
Decl : Node_Id;
Has_POC : Boolean;
Id : Entity_Id;
- Names : Node_Id;
Stmts : List_Id;
Typ : Entity_Id;
@@ -3009,17 +3020,6 @@ package body Exp_Ch3 is
Append_To (Stmts, Make_Task_Create_Call (Rec_Type));
- -- Generate the statements which map a string entry name to a
- -- task entry index. Note that the task may not have entries.
-
- if Entry_Names_OK then
- Names := Build_Entry_Names (Rec_Type);
-
- if Present (Names) then
- Append_To (Stmts, Names);
- end if;
- end if;
-
declare
Task_Type : constant Entity_Id :=
Corresponding_Concurrent_Type (Rec_Type);
@@ -3073,18 +3073,6 @@ package body Exp_Ch3 is
if Is_Protected_Record_Type (Rec_Type) then
Append_List_To (Stmts,
Make_Initialize_Protection (Rec_Type));
-
- -- Generate the statements which map a string entry name to a
- -- protected entry index. Note that the protected type may not
- -- have entries.
-
- if Entry_Names_OK then
- Names := Build_Entry_Names (Rec_Type);
-
- if Present (Names) then
- Append_To (Stmts, Names);
- end if;
- end if;
end if;
-- Second pass: components with per-object constraints