It is used by CodePeer to recognize the special access pattern.
gcc/ada/ChangeLog:
* einfo.ads (Original_Access_Type): Restore.
* gen_il-fields.ads (Opt_Field_Enum): Restore Original_Access_Type.
* gen_il-gen-gen_entities.adb: Adjust accordingly.
* exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Restore the
call to Set_Original_Access_Type.
-- Optimize_Alignment (Off) mode applies to the type/object, then neither
-- of the flags Optimize_Alignment_Space/Optimize_Alignment_Time is set.
+-- Original_Access_Type
+-- Defined in E_Access_Subprogram_Type entities. Set only if the access
+-- type was generated by the expander as part of processing an access-
+-- to-protected-subprogram type. Points to the access-to-protected-
+-- subprogram type. Read by CodePeer.
+
-- Original_Array_Type
-- Defined in modular types and array types and subtypes. Set only if
-- the Is_Packed_Array_Impl_Type flag is set, indicating that the type
-- E_Access_Subprogram_Type
-- Equivalent_Type (remote types only)
-- Directly_Designated_Type
+ -- Original_Access_Type
-- Needs_No_Actuals
-- Can_Use_Internal_Rep
-- Associated_Storage_Pool $$$
Insert_Before_And_Analyze (N, Decl1);
+ -- Associate the access to subprogram with its original access to
+ -- protected subprogram type. Needed by CodePeer to know that this
+ -- type corresponds with an access to protected subprogram type.
+
+ Set_Original_Access_Type (D_T2, T);
+
-- Create Equivalent_Type, a record with two components for an access to
-- object and an access to subprogram.
OK_To_Rename,
Optimize_Alignment_Space,
Optimize_Alignment_Time,
+ Original_Access_Type,
Original_Array_Type,
Original_Protected_Subprogram,
Original_Record_Component,
Cc (E_Access_Subprogram_Type, Access_Subprogram_Kind,
-- An access-to-subprogram type, created by an access-to-subprogram
-- declaration.
- (Sm (Equivalent_Type, Node_Id)));
+ (Sm (Equivalent_Type, Node_Id),
+ Sm (Original_Access_Type, Node_Id)));
Ab (Access_Protected_Kind, Access_Subprogram_Kind,
(Sm (Equivalent_Type, Node_Id)));