From 70c1eda17410886f0800d18b9061f35d76d4bc41 Mon Sep 17 00:00:00 2001 From: Todd Strader Date: Mon, 12 Apr 2021 15:00:36 -0400 Subject: [PATCH] Fix package reported as vpiModule (#2885) --- src/V3EmitCSyms.cpp | 3 ++- test_regress/t/t_vpi_module.v | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/V3EmitCSyms.cpp b/src/V3EmitCSyms.cpp index a389d6a7b..8661ac966 100644 --- a/src/V3EmitCSyms.cpp +++ b/src/V3EmitCSyms.cpp @@ -298,11 +298,12 @@ class EmitCSyms final : EmitCBaseVisitor { m_scopes.emplace_back(std::make_pair(nodep, m_modp)); if (v3Global.opt.vpi() && !nodep->isTop()) { + string type = VN_IS(nodep->modp(), Package) ? "SCOPE_OTHER" : "SCOPE_MODULE"; string name_dedot = AstNode::dedotName(nodep->shortName()); int timeunit = m_modp->timeunit().powerOfTen(); m_vpiScopeCandidates.insert( std::make_pair(nodep->name(), ScopeData(scopeSymString(nodep->name()), name_dedot, - timeunit, "SCOPE_MODULE"))); + timeunit, type))); } } virtual void visit(AstScopeName* nodep) override { diff --git a/test_regress/t/t_vpi_module.v b/test_regress/t/t_vpi_module.v index 8d29e6622..ab6ac8201 100644 --- a/test_regress/t/t_vpi_module.v +++ b/test_regress/t/t_vpi_module.v @@ -12,6 +12,10 @@ import "DPI-C" context function int mon_check(); `endif +package somepackage; + int someint /*verilator public_flat_rw*/; +endpackage + module t (/*AUTOARG*/ // Inputs clk