Package: System

Description

GNAT RUN-TIME COMPONENTS

S Y S T E M

S p e c (NT Version)

$Revision: 1.15 $

Copyright (C) 1992-2000 Free Software Foundation, Inc.

This specification is derived from the Ada Reference Manual for use with GNAT. The copyright notice above, and the license provisions that follow apply solely to the contents of the part following the private keyword.

GNAT is free software; you can redistribute it and/or modify it under terms of the GNU General Public License as published by the Free Soft- ware Foundation; either version 2, or (at your option) any later ver- sion. GNAT is distributed in the hope that it will be useful, but WITH- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License distributed with GNAT; see file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

As a special exception, if other files instantiate generics from this unit, or you link this unit with other files to produce an executable, this unit does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU Public License.

GNAT was originally developed by the GNAT team at New York University. It is now maintained by Ada Core Technologies Inc (http://www.gnat.com).


Header

package System is
 
pragma Pure (System);

Note that we take advantage of the implementation permission to make this unit Pure instead of Preelaborable, see RM 13.7(36)

Known child units

System.Address_Image(function)
System.Address_To_Access_Conversions(generic package)
System.Arith_64(package)
System.Assertions(package)
System.AST_Handling(package)
System.Aux_DEC(package)
System.Bit_Ops(package)
System.Checked_Pools(package)
System.Direct_IO(package)
System.Error_Reporting(package)
System.Exception_Table(package)
System.Exceptions(package)
System.Exn_Flt(package)
System.Exn_Gen(package)
System.Exn_Int(package)
System.Exn_LFlt(package)
System.Exn_LInt(package)
System.Exn_LLF(package)
System.Exn_LLI(package)
System.Exn_SFlt(package)
System.Exn_SInt(package)
System.Exn_SSI(package)
System.Exp_Flt(package)
System.Exp_Gen(package)
System.Exp_Int(package)
System.Exp_LFlt(package)
System.Exp_LInt(package)
System.Exp_LLF(package)
System.Exp_LLI(package)
System.Exp_LLU(package)
System.Exp_Mod(package)
System.Exp_SFlt(package)
System.Exp_SInt(package)
System.Exp_SSI(package)
System.Exp_Uns(package)
System.Fat_Flt(package)
System.Fat_Gen(generic package)
System.Fat_LFlt(package)
System.Fat_LLF(package)
System.Fat_SFlt(package)
System.File_Control_Block(package)
System.File_IO(package)
System.Finalization_Implementation(package)
System.Finalization_Root(package)
System.Fore(package)
System.Global_Locks(package)
System.Img_BIU(package)
System.Img_Bool(package)
System.Img_Char(package)
System.Img_Dec(package)
System.Img_Enum(package)
System.Img_Int(package)
System.Img_LLB(package)
System.Img_LLD(package)
System.Img_LLI(package)
System.Img_LLU(package)
System.Img_LLW(package)
System.Img_Real(package)
System.Img_Uns(package)
System.Img_WChar(package)
System.Img_WIU(package)
System.Interrupt_Management(package)
System.Interrupts(package)
System.IO(package)
System.Machine_Code(package)
System.Machine_State_Operations(package)
System.Mantissa(package)
System.OS_Interface(package)
System.OS_Primitives(package)
System.Pack_03(package)
System.Pack_05(package)
System.Pack_06(package)
System.Pack_07(package)
System.Pack_09(package)
System.Pack_10(package)
System.Pack_11(package)
System.Pack_12(package)
System.Pack_13(package)
System.Pack_14(package)
System.Pack_15(package)
System.Pack_17(package)
System.Pack_18(package)
System.Pack_19(package)
System.Pack_20(package)
System.Pack_21(package)
System.Pack_22(package)
System.Pack_23(package)
System.Pack_24(package)
System.Pack_25(package)
System.Pack_26(package)
System.Pack_27(package)
System.Pack_28(package)
System.Pack_29(package)
System.Pack_30(package)
System.Pack_31(package)
System.Pack_33(package)
System.Pack_34(package)
System.Pack_35(package)
System.Pack_36(package)
System.Pack_37(package)
System.Pack_38(package)
System.Pack_39(package)
System.Pack_40(package)
System.Pack_41(package)
System.Pack_42(package)
System.Pack_43(package)
System.Pack_44(package)
System.Pack_45(package)
System.Pack_46(package)
System.Pack_47(package)
System.Pack_48(package)
System.Pack_49(package)
System.Pack_50(package)
System.Pack_51(package)
System.Pack_52(package)
System.Pack_53(package)
System.Pack_54(package)
System.Pack_55(package)
System.Pack_56(package)
System.Pack_57(package)
System.Pack_58(package)
System.Pack_59(package)
System.Pack_60(package)
System.Pack_61(package)
System.Pack_62(package)
System.Pack_63(package)
System.Parameters(package)
System.Partition_Interface(package)
System.Pool_Global(package)
System.Pool_Local(package)
System.Pool_Size(package)
System.Powten_Table(package)
System.Program_Info(package)
System.RPC(package)
System.Secondary_Stack(package)
System.Sequential_IO(package)
System.Shared_Storage(package)
System.Soft_Links(package)
System.Stack_Checking(package)
System.Standard_Library(package)
System.Storage_Elements(package)
System.Storage_Pools(package)
System.Stream_Attributes(package)
System.String_Ops(package)
System.String_Ops_Concat_3(package)
System.String_Ops_Concat_4(package)
System.String_Ops_Concat_5(package)
System.Task_Info(package)
System.Task_Primitives(package)
System.Tasking(package)
System.Traceback(package)
System.Unsigned_Types(package)
System.Val_Bool(package)
System.Val_Char(package)
System.Val_Dec(package)
System.Val_Enum(package)
System.Val_Int(package)
System.Val_LLD(package)
System.Val_LLI(package)
System.Val_LLU(package)
System.Val_Real(package)
System.Val_Uns(package)
System.Val_Util(package)
System.Val_WChar(package)
System.Vax_Float_Operations(package)
System.Version_Control(package)
System.VMS_Exception_Table(package)
System.WCh_Cnv(package)
System.WCh_Con(package)
System.WCh_JIS(package)
System.WCh_StW(package)
System.WCh_WtS(package)
System.Wid_Bool(package)
System.Wid_Char(package)
System.Wid_Enum(package)
System.Wid_LLI(package)
System.Wid_LLU(package)
System.Wid_WChar(package)
System.WWd_Char(package)
System.WWd_Enum(package)
System.Wwd_WChar(package)

Type Summary

Address
Primitive Operations:  "<", "<=", "=", ">", ">="
Bit_Order
Name

Constants and Named Numbers

Default_Bit_Order : constant Bit_Order := Low_Order_First;
Priority-related Declarations (RM D.1)
Default_Priority : constant Priority :=
  Standard."/" (Standard."+" (Priority'First, Priority'Last), 2);
Fine_Delta : constant := 2.0 ** (-Max_Mantissa);
Max_Base_Digits : constant := Long_Long_Float'Digits;
Max_Binary_Modulus : constant := 2 ** Long_Long_Integer'Size;
Max_Digits : constant := Long_Long_Float'Digits;
Max_Int : constant := Long_Long_Integer'Last;
Max_Interrupt_Priority : constant Positive := 31;
Max_Mantissa : constant := 63;
Max_Nonbinary_Modulus : constant := Integer'Last;
Max_Priority : constant Positive := 30;
Memory_Size : constant := 2 ** Standard'Address_Size;
Address comparison
Min_Int : constant := Long_Long_Integer'First;
Null_Address : constant Address;
Storage_Unit : constant := Standard'Storage_Unit;
System_Name : constant Name := SYSTEM_NAME_GNAT;
System-Dependent Named Numbers
Tick : constant := Standard'Tick;
Storage-related Declarations
Word_Size : constant := Standard'Word_Size;

Other Items:

type Name is (SYSTEM_NAME_GNAT);

type Address is private;

function "<"  (Left, Right : Address) return Boolean;

function "<=" (Left, Right : Address) return Boolean;

function ">"  (Left, Right : Address) return Boolean;

function ">=" (Left, Right : Address) return Boolean;

function "="  (Left, Right : Address) return Boolean;

pragma Import (Intrinsic, "<");

pragma Import (Intrinsic, "<=");

pragma Import (Intrinsic, ">");

pragma Import (Intrinsic, ">=");

pragma Import (Intrinsic, "=");
Other System-Dependent Declarations

type Bit_Order is (High_Order_First, Low_Order_First);

subtype Any_Priority is Integer
  range 0 .. Standard'Max_Interrupt_Priority;

subtype Priority is Any_Priority
  range 0 .. Standard'Max_Priority;
Functional notation is needed in the following to avoid visibility problems when this package is compiled through rtsfind in the middle of another compilation.

subtype Interrupt_Priority is Any_Priority
  range
    Standard."+" (Standard'Max_Priority,  1) ..
      Standard'Max_Interrupt_Priority;

private

   --  Implementation-defined ...
end System;