Append_To (Args, Make_Identifier (Loc, Name_uMaster));
end if;
- Append_To (Args, Make_Identifier (Loc, Name_uChain));
+ if not Restricted_Profile then
+
+ -- No _Chain for restricted profile
+
+ Append_To (Args, Make_Identifier (Loc, Name_uChain));
+ end if;
-- Ada 2005 (AI-287): In case of default initialized components
-- with tasks, we generate a null string actual parameter.
Append_To (Args, Make_Identifier (Loc, Name_uMaster));
end if;
- Append_To (Args, Make_Identifier (Loc, Name_uChain));
+ if not Restricted_Profile then
+
+ -- No _Chain for restricted profile
+
+ Append_To (Args, Make_Identifier (Loc, Name_uChain));
+ end if;
+
Append_To (Args, Make_Identifier (Loc, Name_uTask_Name));
First_Discr_Param := Next (Next (Next (First_Discr_Param)));
end if;
Make_Parameter_Specification (Loc,
Defining_Identifier =>
Make_Defining_Identifier (Loc, Name_uMaster),
- Parameter_Type => New_Reference_To (RTE (RE_Master_Id), Loc)));
+ Parameter_Type =>
+ New_Reference_To (RTE (RE_Master_Id), Loc)));
- Append_To (Formals,
- Make_Parameter_Specification (Loc,
- Defining_Identifier =>
- Make_Defining_Identifier (Loc, Name_uChain),
- In_Present => True,
- Out_Present => True,
- Parameter_Type =>
- New_Reference_To (RTE (RE_Activation_Chain), Loc)));
+ if not Restricted_Profile then
+
+ -- No _Chain for restricted profile
+
+ Append_To (Formals,
+ Make_Parameter_Specification (Loc,
+ Defining_Identifier =>
+ Make_Defining_Identifier (Loc, Name_uChain),
+ In_Present => True,
+ Out_Present => True,
+ Parameter_Type =>
+ New_Reference_To (RTE (RE_Activation_Chain), Loc)));
+ end if;
Append_To (Formals,
Make_Parameter_Specification (Loc,
Defining_Identifier =>
Make_Defining_Identifier (Loc, Name_uTask_Name),
- In_Present => True,
- Parameter_Type =>
- New_Reference_To (Standard_String, Loc)));
+ In_Present => True,
+ Parameter_Type => New_Reference_To (Standard_String, Loc)));
end if;
return Formals;
(RTE (RE_Set_Dynamic_Offset_To_Top), Loc),
Parameter_Associations => New_List (
Make_Attribute_Reference (Loc,
- Prefix => New_Copy_Tree (Target),
+ Prefix => New_Copy_Tree (Target),
Attribute_Name => Name_Address),
Unchecked_Convert_To (RTE (RE_Tag),
Make_Attribute_Reference (Loc,
Prefix =>
Make_Selected_Component (Loc,
- Prefix => New_Copy_Tree (Target),
+ Prefix => New_Copy_Tree (Target),
Selector_Name =>
New_Reference_To (Tag_Comp, Loc)),
Attribute_Name => Name_Position)),
(Offset_To_Top_Comp, Loc)),
Expression =>
Make_Attribute_Reference (Loc,
- Prefix =>
+ Prefix =>
Make_Selected_Component (Loc,
- Prefix => New_Copy_Tree (Target),
- Selector_Name =>
- New_Reference_To (Tag_Comp, Loc)),
+ Prefix => New_Copy_Tree (Target),
+ Selector_Name => New_Reference_To (Tag_Comp, Loc)),
Attribute_Name => Name_Position)));
-- Normal case: No discriminants in the parent type
else
- -- Don't need to set any value if this interface shares
- -- the primary dispatch table.
+ -- Don't need to set any value if this interface shares the
+ -- primary dispatch table.
if not Is_Ancestor (Iface, Typ, Use_Full_View => True) then
Append_To (Stmts_List,