diff options
author | Robert Dewar <dewar@adacore.com> | 2007-06-06 12:23:26 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2007-06-06 12:23:26 +0200 |
commit | 1c28fe3afee2a7dde65f9aa96560d0170af3aae7 (patch) | |
tree | cfb263da79acf0351b12e03edf6c58d335c721a2 /gcc/ada/urealp.adb | |
parent | 0a36105d5657dd7126160c5bae2b9b68af63fcff (diff) | |
download | gcc-1c28fe3afee2a7dde65f9aa96560d0170af3aae7.tar.gz |
sinput.ads, [...] (Unlock): New procedure.
2007-04-20 Robert Dewar <dewar@adacore.com>
* sinput.ads, sinput.adb, uintp.ads, urealp.adb, stringt.adb,
sem_elim.adb, prj-strt.adb, repinfo.ads, repinfo.adb, namet.ads,
elists.ads, elists.adb, lib.ads, lib.adb (Unlock): New procedure.
Fix lower bound of tables.
Add rep clauses.
* nlists.adb: Ditto.
(Prev_Node, Next_Node): Change index type to Int so that it properly
covers the range First_Node_Id - 1 up.
From-SVN: r125391
Diffstat (limited to 'gcc/ada/urealp.adb')
-rw-r--r-- | gcc/ada/urealp.adb | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/gcc/ada/urealp.adb b/gcc/ada/urealp.adb index 4897bf12dc6..737e4b4e80e 100644 --- a/gcc/ada/urealp.adb +++ b/gcc/ada/urealp.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- 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- -- @@ -57,9 +57,23 @@ package body Urealp is -- Flag set if value is negative end record; + -- The following representation clause ensures that the above record + -- has no holes. We do this so that when instances of this record are + -- written by Tree_Gen, we do not write uninitialized values to the file. + + for Ureal_Entry use record + Num at 0 range 0 .. 31; + Den at 4 range 0 .. 31; + Rbase at 8 range 0 .. 31; + Negative at 12 range 0 .. 31; + end record; + + for Ureal_Entry'Size use 16 * 8; + -- This ensures that we did not leave out any fields + package Ureals is new Table.Table ( Table_Component_Type => Ureal_Entry, - Table_Index_Type => Ureal, + Table_Index_Type => Ureal'Base, Table_Low_Bound => Ureal_First_Entry, Table_Initial => Alloc.Ureals_Initial, Table_Increment => Alloc.Ureals_Increment, |