-- A component of this type is guaranteed to be included in the
-- Ada_Task_Control_Block.
+ subtype Task_Address is System.Address;
+ -- In some versions of Task_Primitives, notably for VMS, Task_Address is
+ -- the short version of address defined in System.Aux_DEC. To avoid
+ -- dragging Aux_DEC into tasking packages a tasking specific subtype is
+ -- defined here.
+
+ Task_Address_Size : constant := Standard'Address_Size;
+ -- The size of Task_Address
+
+ Alternate_Stack_Size : constant := System.OS_Interface.Alternate_Stack_Size;
+ -- Import value from System.OS_Interface
+
private
type Lock is new System.OS_Interface.pthread_mutex_t;
with Interfaces.C;
with System.OS_Interface;
+with System.Aux_DEC;
package System.Task_Primitives is
pragma Preelaborate;
-- A component of this type is guaranteed to be included in the
-- Ada_Task_Control_Block.
+ subtype Task_Address is System.Aux_DEC.Short_Address;
+ -- Task_Address is the short version of address defined in System.Aux_DEC.
+ -- To avoid dragging Aux_DEC into tasking packages a tasking specific
+ -- subtype is defined here.
+
+ Task_Address_Size : constant := System.Aux_DEC.Short_Address_Size;
+ -- The size of Task_Address
+
+ Alternate_Stack_Size : constant := 0;
+ -- No alternate signal stack is used on this platform
+
private
type Exc_Stack_T is array (0 .. 8192) of aliased Character;