aboutsummaryrefslogtreecommitdiffstats
path: root/src/errorout-memory.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-06-20 19:01:57 +0200
committerTristan Gingold <tgingold@free.fr>2019-06-20 19:01:57 +0200
commit6f7777c99483cdc10d5eafe7bd47e752a34f862a (patch)
tree079030e609e22233a50f90a4edcb5bbd6a6b96d9 /src/errorout-memory.adb
parente3945ec7d3a10888c42505343600e946cf960da2 (diff)
downloadghdl-6f7777c99483cdc10d5eafe7bd47e752a34f862a.tar.gz
ghdl-6f7777c99483cdc10d5eafe7bd47e752a34f862a.tar.bz2
ghdl-6f7777c99483cdc10d5eafe7bd47e752a34f862a.zip
errorout-memory: avoid a crash after the limit is
Diffstat (limited to 'src/errorout-memory.adb')
-rw-r--r--src/errorout-memory.adb5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/errorout-memory.adb b/src/errorout-memory.adb
index c0e6cd1df..a13e5c668 100644
--- a/src/errorout-memory.adb
+++ b/src/errorout-memory.adb
@@ -115,7 +115,10 @@ package body Errorout.Memory is
pragma Assert (Group /= Msg_Single);
case Errors.Table (Errors.Last).Header.Group is
when Msg_Single | Msg_Last =>
- raise Internal_Error;
+ -- Check consistency until messages are discarded.
+ if Nbr_Errors <= Max_Nbr_Errors then
+ raise Internal_Error;
+ end if;
when Msg_Main =>
Errors.Table (Errors.Last).Header.Group := Msg_Single;
when Msg_Related =>