1------------------------------------------------------------------------------ 2-- -- 3-- GNAT COMPILER COMPONENTS -- 4-- -- 5-- S Y S T E M . P A R A M E T E R S -- 6-- -- 7-- S p e c -- 8-- -- 9-- Copyright (C) 1992-2014, Free Software Foundation, Inc. -- 10-- -- 11-- GNAT is free software; you can redistribute it and/or modify it under -- 12-- terms of the GNU General Public License as published by the Free Soft- -- 13-- ware Foundation; either version 3, or (at your option) any later ver- -- 14-- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- 15-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -- 16-- or FITNESS FOR A PARTICULAR PURPOSE. -- 17-- -- 18-- As a special exception under Section 7 of GPL version 3, you are granted -- 19-- additional permissions described in the GCC Runtime Library Exception, -- 20-- version 3.1, as published by the Free Software Foundation. -- 21-- -- 22-- You should have received a copy of the GNU General Public License and -- 23-- a copy of the GCC Runtime Library Exception along with this program; -- 24-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see -- 25-- <http://www.gnu.org/licenses/>. -- 26-- -- 27-- GNAT was originally developed by the GNAT team at New York University. -- 28-- Extensive contributions were provided by Ada Core Technologies Inc. -- 29-- -- 30------------------------------------------------------------------------------ 31 32-- Default version used when no target-specific version is provided 33 34-- This package defines some system dependent parameters for GNAT. These 35-- are values that are referenced by the runtime library and are therefore 36-- relevant to the target machine. 37 38-- The parameters whose value is defined in the spec are not generally 39-- expected to be changed. If they are changed, it will be necessary to 40-- recompile the run-time library. 41 42-- The parameters which are defined by functions can be changed by modifying 43-- the body of System.Parameters in file s-parame.adb. A change to this body 44-- requires only rebinding and relinking of the application. 45 46-- Note: do not introduce any pragma Inline statements into this unit, since 47-- otherwise the relinking and rebinding capability would be deactivated. 48 49package System.Parameters is 50 pragma Pure; 51 52 ---------------------------------------------- 53 -- Characteristics of types in Interfaces.C -- 54 ---------------------------------------------- 55 56 long_bits : constant := Long_Integer'Size; 57 -- Number of bits in type long and unsigned_long. The normal convention 58 -- is that this is the same as type Long_Integer, but this may not be true 59 -- of all targets. 60 61 ptr_bits : constant := Standard'Address_Size; 62 -- Number of bits in Interfaces.C pointers, normally a standard address 63 64end System.Parameters; 65