aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2020-12-07 22:04:43 +0100
committerPierre-Marie de Rodat <derodat@adacore.com>2021-04-28 05:37:59 -0400
commit75716ebc25bfb4a647b05d0b2443b5495dab425e (patch)
tree23e2f3cbfc3860885181cd359f3ec1810a0880f1
parent416d48eba3a3809757ef7c9d35dd0ac0c9795be4 (diff)
downloadgcc-75716ebc25bfb4a647b05d0b2443b5495dab425e.zip
gcc-75716ebc25bfb4a647b05d0b2443b5495dab425e.tar.gz
gcc-75716ebc25bfb4a647b05d0b2443b5495dab425e.tar.bz2
[Ada] Couple of adjustments for the sake of static analyzers
gcc/ada/ * libgnat/s-valrea.adb (Integer_to_Real): Use a subtype of Num for the component type of the table of powers of ten. * libgnat/s-valuer.adb (Round_Extra): Add assertion on Base.
-rw-r--r--gcc/ada/libgnat/s-valrea.adb4
-rw-r--r--gcc/ada/libgnat/s-valuer.adb2
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ada/libgnat/s-valrea.adb b/gcc/ada/libgnat/s-valrea.adb
index 0ac3846..582b966 100644
--- a/gcc/ada/libgnat/s-valrea.adb
+++ b/gcc/ada/libgnat/s-valrea.adb
@@ -173,7 +173,9 @@ package body System.Val_Real is
when 10 =>
declare
- Powten : constant array (0 .. Maxpow) of Num;
+ subtype Pow_Num is Num range 1.0 .. Num'Last;
+
+ Powten : constant array (0 .. Maxpow) of Pow_Num;
pragma Import (Ada, Powten);
for Powten'Address use Powten_Address;
diff --git a/gcc/ada/libgnat/s-valuer.adb b/gcc/ada/libgnat/s-valuer.adb
index 9e4de3e..bd57bfb 100644
--- a/gcc/ada/libgnat/s-valuer.adb
+++ b/gcc/ada/libgnat/s-valuer.adb
@@ -128,6 +128,8 @@ package body System.Value_R is
Extra : in out Char_As_Digit;
Base : Unsigned)
is
+ pragma Assert (Base in 2 .. 16);
+
B : constant Uns := Uns (Base);
begin