aboutsummaryrefslogtreecommitdiffstats
path: root/src/grt/grt-vcd.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2021-06-10 07:57:05 +0200
committerTristan Gingold <tgingold@free.fr>2021-06-10 07:57:05 +0200
commitc64e7ba56376b933cb0ddb2b4949a83c926a3c67 (patch)
tree83462d67da076ab04a2dab0462e248d5cff58a57 /src/grt/grt-vcd.adb
parent1bf8aa85f2adbfb7d56a0aea66f52615889bb7bc (diff)
downloadghdl-c64e7ba56376b933cb0ddb2b4949a83c926a3c67.tar.gz
ghdl-c64e7ba56376b933cb0ddb2b4949a83c926a3c67.tar.bz2
ghdl-c64e7ba56376b933cb0ddb2b4949a83c926a3c67.zip
vpi: handle get_value for indexed names. Fix #237
Diffstat (limited to 'src/grt/grt-vcd.adb')
-rw-r--r--src/grt/grt-vcd.adb14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/grt/grt-vcd.adb b/src/grt/grt-vcd.adb
index 480da947c..85b149141 100644
--- a/src/grt/grt-vcd.adb
+++ b/src/grt/grt-vcd.adb
@@ -353,8 +353,20 @@ package body Grt.Vcd is
when VhpiGenericDeclK
| VhpiConstDeclK =>
return Vcd_Variable;
+ when VhpiIndexedNameK =>
+ declare
+ Base : VhpiHandleT;
+ Err : AvhpiErrorT;
+ begin
+ Vhpi_Handle (VhpiBaseName, Sig, Base, Err);
+ if Err /= AvhpiErrorOk then
+ raise Program_Error;
+ end if;
+ return Get_Vcd_Value_Kind (Base);
+ end;
when others =>
- return Vcd_Value_Bad;
+ raise Program_Error;
+ -- return Vcd_Value_Bad;
end case;
end Get_Vcd_Value_Kind;