aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-canon.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2021-08-30 08:12:26 +0200
committerTristan Gingold <tgingold@free.fr>2021-08-30 08:12:26 +0200
commit852f4310b717765360f5d3bf575d40af5769f70d (patch)
treed3ea3da1d6152b6a14ca71f24cc8f03139dc3101 /src/vhdl/vhdl-canon.adb
parent7b0195b5e706502a1d564f31867b02bf2a8a27bb (diff)
downloadghdl-852f4310b717765360f5d3bf575d40af5769f70d.tar.gz
ghdl-852f4310b717765360f5d3bf575d40af5769f70d.tar.bz2
ghdl-852f4310b717765360f5d3bf575d40af5769f70d.zip
vhdl and psl: parse sync_abort and async_abort. For #1654
Diffstat (limited to 'src/vhdl/vhdl-canon.adb')
-rw-r--r--src/vhdl/vhdl-canon.adb11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/vhdl/vhdl-canon.adb b/src/vhdl/vhdl-canon.adb
index f93d66d52..a9efeb457 100644
--- a/src/vhdl/vhdl-canon.adb
+++ b/src/vhdl/vhdl-canon.adb
@@ -1730,6 +1730,7 @@ package body Vhdl.Canon is
procedure Canon_Psl_Property_Directive (Stmt : Iir)
is
+ use PSL.Nodes;
use PSL.NFAs;
Prop : PSL_Node;
Fa : PSL_NFA;
@@ -1741,6 +1742,16 @@ package body Vhdl.Canon is
Set_Psl_Property (Stmt, Prop);
-- Generate the NFA.
+ case Get_Kind (Prop) is
+ when N_Async_Abort
+ | N_Sync_Abort =>
+ Prop := Get_Property (Prop);
+ Set_PSL_Abort_Flag (Stmt, True);
+ when N_Abort =>
+ null;
+ when others =>
+ null;
+ end case;
Fa := PSL.Build.Build_FA (Prop);
Set_PSL_NFA (Stmt, Fa);