diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2019-08-14 09:52:48 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2019-08-14 09:52:48 +0000 |
commit | f0539a7914cba3b7de76665a74edb90e30f2dbc9 (patch) | |
tree | c494f371022ac3bcd160707ab4b54c0c83e5fc83 | |
parent | 0cc1d9ad98fdabe6c577de1a83c4e12821f0c333 (diff) | |
download | gcc-f0539a7914cba3b7de76665a74edb90e30f2dbc9.zip gcc-f0539a7914cba3b7de76665a74edb90e30f2dbc9.tar.gz gcc-f0539a7914cba3b7de76665a74edb90e30f2dbc9.tar.bz2 |
[Ada] Further cleanup in inlining machinery
This is visible if you pass a very small number by means of -gnateinn.
2019-08-14 Eric Botcazou <ebotcazou@adacore.com>
gcc/ada/
* inline.adb (Add_Pending_Instantiation): Fix off-by-one error
in the comparison against the maximum number of instantiations.
From-SVN: r274472
-rw-r--r-- | gcc/ada/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/ada/inline.adb | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index a8de811..61c22fd 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,10 @@ 2019-08-14 Eric Botcazou <ebotcazou@adacore.com> + * inline.adb (Add_Pending_Instantiation): Fix off-by-one error + in the comparison against the maximum number of instantiations. + +2019-08-14 Eric Botcazou <ebotcazou@adacore.com> + * inline.adb (Add_Pending_Instantiation): Use greater-or-equal in the comparison against the maximum number of instantiations. diff --git a/gcc/ada/inline.adb b/gcc/ada/inline.adb index 15cec51..84ad1ab 100644 --- a/gcc/ada/inline.adb +++ b/gcc/ada/inline.adb @@ -794,7 +794,7 @@ package body Inline is -- Here is a defense against a ludicrous number of instantiations -- caused by a circular set of instantiation attempts. - if Pending_Instantiations.Last >= Maximum_Instantiations then + if Pending_Instantiations.Last + 1 >= Maximum_Instantiations then Error_Msg_Uint_1 := UI_From_Int (Maximum_Instantiations); Error_Msg_N ("too many instantiations, exceeds max of^", Inst); Error_Msg_N ("\limit can be changed using -gnateinn switch", Inst); |