source: trunk/design/matreshka-internals-host_types__64.ads

Last change on this file was 2464, checked in by vadim.godunko, 8 years ago

Update properties to simplify future merge from branches.

  • Property svn:keywords set to Author Date Revision
File size: 3.0 KB
Line 
1------------------------------------------------------------------------------
2-- --
3-- Matreshka Project --
4-- --
5-- Localization, Internationalization, Globalization for Ada --
6-- --
7-- Runtime Library Component --
8-- --
9------------------------------------------------------------------------------
10-- --
11-- Copyright © 2009 Vadim Godunko <vgodunko@gmail.com> --
12-- --
13-- Matreshka is free software; you can redistribute it and/or modify it --
14-- under terms of the GNU General Public License as published by the Free --
15-- Software Foundation; either version 2, or (at your option) any later --
16-- version. Matreshka is distributed in the hope that it will be useful, --
17-- but WITHOUT ANY WARRANTY; without even the implied warranty of --
18-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General --
19-- Public License for more details. You should have received a copy of the --
20-- GNU General Public License distributed with Matreshka; see file COPYING. --
21-- If not, write to the Free Software Foundation, 51 Franklin Street, --
22-- Fifth Floor, Boston, MA 02110-1301, USA. --
23-- --
24-- As a special exception, if other files instantiate generics from this --
25-- unit, or you link this unit with other files to produce an executable, --
26-- this unit does not by itself cause the resulting executable to be --
27-- covered by the GNU General Public License. This exception does not --
28-- however invalidate any other reasons why the executable file might be --
29-- covered by the GNU Public License. --
30-- --
31------------------------------------------------------------------------------
32-- $Revision: 2464 $ $Date: 2012-02-07 18:25:04 +0000 (Tue, 07 Feb 2012) $
33------------------------------------------------------------------------------
34with System;
35
36package Matreshka.Internals.Host_Types is
37
38 pragma Pure;
39
40 -- System.Address'Size (it is not a static value, thus can't be used in
41 -- the constant declaration) as well as lower bit and its mask to be used
42 -- by markable addresses.
43
44 Address_Size : constant := 64;
45 pragma Assert (System.Address'Size = Address_Size);
46
47 Address_Mark_Bit : constant := 16#0000_0000_0000_0001#;
48 Address_Mark_Mask : constant := 16#FFFF_FFFF_FFFF_FFFE#;
49
50end Matreshka.Internals.Host_Types;
Note: See TracBrowser for help on using the repository browser.