diff --git a/elab_lval.cc b/elab_lval.cc index fb1558265..91d3691d2 100644 --- a/elab_lval.cc +++ b/elab_lval.cc @@ -717,7 +717,7 @@ bool PEIdent::elaborate_lval_net_class_member_(Design*des, NetScope*, return true; } - + bool PEIdent::elaborate_lval_net_packed_member_(Design*des, NetScope*scope, NetAssign_*lv, const perm_string&member_name) const diff --git a/ivl.def b/ivl.def index de13242f4..d47294db9 100644 --- a/ivl.def +++ b/ivl.def @@ -71,6 +71,7 @@ ivl_expr_oper3 ivl_expr_parameter ivl_expr_parm ivl_expr_parms +ivl_expr_property_idx ivl_expr_repeat ivl_expr_scope ivl_expr_sel_type @@ -141,6 +142,7 @@ ivl_lpm_width ivl_lval_idx ivl_lval_mux ivl_lval_part_off +ivl_lval_property_idx ivl_lval_sel_type ivl_lval_sig ivl_lval_width @@ -190,6 +192,8 @@ ivl_scope_attr_cnt ivl_scope_attr_val ivl_scope_basename ivl_scope_children +ivl_scope_class +ivl_scope_classes ivl_scope_def ivl_scope_def_file ivl_scope_def_lineno @@ -302,9 +306,13 @@ ivl_switch_width ivl_type_base ivl_type_element +ivl_type_name ivl_type_packed_dimensions ivl_type_packed_lsb ivl_type_packed_msb +ivl_type_prop_name +ivl_type_prop_type +ivl_type_properties ivl_udp_init ivl_udp_file diff --git a/tgt-vlog95/logic_lpm.c b/tgt-vlog95/logic_lpm.c index 99c0904ce..7c3d2e42c 100644 --- a/tgt-vlog95/logic_lpm.c +++ b/tgt-vlog95/logic_lpm.c @@ -1852,6 +1852,7 @@ void dump_nexus_information(ivl_scope_t scope, ivl_nexus_t nex) case IVL_VT_LOGIC: fprintf(stderr, " logic"); break; case IVL_VT_STRING: fprintf(stderr, " string"); break; case IVL_VT_DARRAY: fprintf(stderr, " dynamic array"); + case IVL_VT_CLASS: fprintf(stderr, " class"); break; } } else { diff --git a/vvp/vvp_cobject.h b/vvp/vvp_cobject.h index 510893189..66b18647d 100644 --- a/vvp/vvp_cobject.h +++ b/vvp/vvp_cobject.h @@ -19,6 +19,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +# include # include "vvp_object.h" class class_type; diff --git a/vvp/vvp_object.h b/vvp/vvp_object.h index 3aff181b1..5509d39fe 100644 --- a/vvp/vvp_object.h +++ b/vvp/vvp_object.h @@ -29,7 +29,7 @@ */ class vvp_object { public: - inline vvp_object() { total_active_cnt_ += 1; } + inline vvp_object() { ref_cnt_ = 0; total_active_cnt_ += 1; } virtual ~vvp_object() =0; static void cleanup(void);