diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-06-01 22:05:01 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-06-02 03:24:53 +0200 |
commit | b0de47733bf9ee5690fb2bcad919d8d92431b026 (patch) | |
tree | 390f521d899407de2ae3eb7566b1ee8e3d084261 /src/grt/grt-lib.adb | |
parent | d667339603a7a3e408b135737b058e2a9976ae44 (diff) | |
download | ghdl-b0de47733bf9ee5690fb2bcad919d8d92431b026.tar.gz ghdl-b0de47733bf9ee5690fb2bcad919d8d92431b026.tar.bz2 ghdl-b0de47733bf9ee5690fb2bcad919d8d92431b026.zip |
grt: add and document option --asserts
Diffstat (limited to 'src/grt/grt-lib.adb')
-rw-r--r-- | src/grt/grt-lib.adb | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/src/grt/grt-lib.adb b/src/grt/grt-lib.adb index 3bd3440ec..9908d581c 100644 --- a/src/grt/grt-lib.adb +++ b/src/grt/grt-lib.adb @@ -27,7 +27,7 @@ with Interfaces; with Grt.Errors; use Grt.Errors; with Grt.Errors_Exec; use Grt.Errors_Exec; with Grt.Severity; -with Grt.Options; +with Grt.Options; use Grt.Options; with Grt.Fcvt; with Grt.Backtraces; @@ -96,25 +96,28 @@ package body Grt.Lib is end if; end Do_Report; + function Is_Assert_Disabled (Policy : Assert_Handling) return Boolean is + begin + return Policy = Disable_Asserts + or else (Policy = Disable_Asserts_At_Time_0 and Current_Time = 0); + end Is_Assert_Disabled; + procedure Ghdl_Assert_Failed - (Str : Std_String_Ptr; Severity : Integer; Loc : Ghdl_Location_Ptr) - is + (Str : Std_String_Ptr; Severity : Integer; Loc : Ghdl_Location_Ptr) is begin + if Is_Assert_Disabled (Asserts_Policy) then + return; + end if; Do_Report ("assertion", Str, "Assertion violation", Severity, Loc); end Ghdl_Assert_Failed; procedure Ghdl_Ieee_Assert_Failed - (Str : Std_String_Ptr; Severity : Integer; Loc : Ghdl_Location_Ptr) - is - use Grt.Options; + (Str : Std_String_Ptr; Severity : Integer; Loc : Ghdl_Location_Ptr) is begin - if Ieee_Asserts = Disable_Asserts - or else (Ieee_Asserts = Disable_Asserts_At_Time_0 and Current_Time = 0) - then + if Is_Assert_Disabled (Ieee_Asserts) then return; - else - Do_Report ("assertion", Str, "Assertion violation", Severity, Loc); end if; + Do_Report ("assertion", Str, "Assertion violation", Severity, Loc); end Ghdl_Ieee_Assert_Failed; procedure Ghdl_Psl_Assert_Failed @@ -290,7 +293,6 @@ package body Grt.Lib is procedure Ghdl_Check_Stack_Allocation (Size : Ghdl_Index_Type) is - use Options; Bt : Backtrace_Addrs; begin if Max_Stack_Allocation = 0 then |