diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-06-23 08:21:26 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-06-23 08:21:26 +0200 |
commit | bc20523f7b770a2ad34ab9fb6260d593e007e8ec (patch) | |
tree | 055f02e3e3f13e394ea9082c561ba3e01e199a63 /gcc/ada/s-rannum.adb | |
parent | eeed09ef663f6c6f0c4f41f64d6029e6474263b0 (diff) | |
download | gcc-bc20523f7b770a2ad34ab9fb6260d593e007e8ec.zip gcc-bc20523f7b770a2ad34ab9fb6260d593e007e8ec.tar.gz gcc-bc20523f7b770a2ad34ab9fb6260d593e007e8ec.tar.bz2 |
[multiple changes]
2010-06-23 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb: Use predefined unsigned type in all cases.
2010-06-23 Bob Duff <duff@adacore.com>
* s-rannum.adb (Reset): Avoid overflow in calculation of Initiator.
* g-pehage.ads: Minor comment fixes.
* g-pehage.adb: Minor: Add some additional debugging printouts under
Verbose flag.
2010-06-23 Robert Dewar <dewar@adacore.com>
* binde.adb (Better_Choice): Always prefer Pure/Preelab.
(Worse_Choice): Always prefer Pure/Preelab.
From-SVN: r161246
Diffstat (limited to 'gcc/ada/s-rannum.adb')
-rw-r--r-- | gcc/ada/s-rannum.adb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ada/s-rannum.adb b/gcc/ada/s-rannum.adb index 5065910..d85dd2e 100644 --- a/gcc/ada/s-rannum.adb +++ b/gcc/ada/s-rannum.adb @@ -484,7 +484,12 @@ package body System.Random_Numbers is ----------- procedure Reset (Gen : Generator) is - X : constant Unsigned_32 := Unsigned_32 ((Calendar.Clock - Y2K) * 64.0); + Clock : constant Time := Calendar.Clock; + Duration_Since_Y2K : constant Duration := Clock - Y2K; + + X : constant Unsigned_32 := + Unsigned_32'Mod (Unsigned_64 (Duration_Since_Y2K) * 64); + begin Init (Gen, X); end Reset; |