diff --git a/ivl.def b/ivl.def index c254c422a..b6c571491 100644 --- a/ivl.def +++ b/ivl.def @@ -203,6 +203,7 @@ ivl_signal_nex ivl_signal_npath ivl_signal_path ivl_signal_port +ivl_signal_scope ivl_signal_signed ivl_signal_type ivl_signal_width diff --git a/vvp/compile.cc b/vvp/compile.cc index 67356aed9..67c7fc69e 100644 --- a/vvp/compile.cc +++ b/vvp/compile.cc @@ -737,7 +737,7 @@ bool crstring_test(const char*str) if (tp == 0) return false; if (tp[1] != 0) return false; - if ((strspn(str+3, "0123456789abcdefmg")+3) != (tp - str)) + if ((strspn(str+3, "0123456789abcdefmg")+3) != (size_t)(tp - str)) return false; return true; diff --git a/vvp/vpi_real.cc b/vvp/vpi_real.cc index 1b210c1db..ff0681dcb 100644 --- a/vvp/vpi_real.cc +++ b/vvp/vpi_real.cc @@ -196,9 +196,8 @@ vpiHandle vpip_make_real_var(const char*name, vvp_net_t*net) void real_delete(vpiHandle item) { struct __vpiRealVar*obj = (struct __vpiRealVar*) item; - - vvp_fun_signal_real*fun = (vvp_fun_signal_real*) obj->net->fun; - fun->clear_all_callbacks(); + assert(obj->net->fil); + obj->net->fil->clear_all_callbacks(); free(obj); } diff --git a/vvp/vpi_signal.cc b/vvp/vpi_signal.cc index 871595f7b..bfbff61b9 100644 --- a/vvp/vpi_signal.cc +++ b/vvp/vpi_signal.cc @@ -939,9 +939,8 @@ static struct __vpiSignal* allocate_vpiSignal(void) void signal_delete(vpiHandle item) { struct __vpiSignal *obj = (__vpiSignal *) item; - vvp_fun_signal_base*sig_fun; - sig_fun = (vvp_fun_signal_base*) obj->node->fun; - sig_fun->clear_all_callbacks(); + assert(obj->node->fil); + obj->node->fil->clear_all_callbacks(); vvp_net_delete(obj->node); VALGRIND_MEMPOOL_FREE(obj->pool, obj); } @@ -1343,9 +1342,8 @@ void PV_delete(vpiHandle item) break; } } - vvp_fun_signal_base*sig_fun; - sig_fun = (vvp_fun_signal_base*) obj->net->fun; - sig_fun->clear_all_callbacks(); + assert(obj->net->fil); + obj->net->fil->clear_all_callbacks(); free(obj); } #endif diff --git a/vvp/words.cc b/vvp/words.cc index 20c2f0700..cd01a2e73 100644 --- a/vvp/words.cc +++ b/vvp/words.cc @@ -207,6 +207,7 @@ class __compile_net_resolv : public base_net_resolv { { msb_ = msb; lsb_ = lsb; signed_flag_ = signed_flag; + net8_flag_ = net8_flag; } ~__compile_net_resolv() { }