diff --git a/src/V3AstNodes.cpp b/src/V3AstNodes.cpp index b5dc6d2b2..92a3ac153 100644 --- a/src/V3AstNodes.cpp +++ b/src/V3AstNodes.cpp @@ -1373,6 +1373,10 @@ void AstPackageImport::dump(std::ostream& str) const { this->AstNode::dump(str); str << " -> " << packagep(); } +void AstPatMember::dump(std::ostream& str) const { + this->AstNode::dump(str); + if (isDefault()) str << " [DEFAULT]"; +} void AstNodeTriop::dump(std::ostream& str) const { this->AstNodeMath::dump(str); } void AstSel::dump(std::ostream& str) const { this->AstNodeTriop::dump(str); diff --git a/src/V3AstNodes.h b/src/V3AstNodes.h index b4f564412..8d77fc54c 100644 --- a/src/V3AstNodes.h +++ b/src/V3AstNodes.h @@ -8386,6 +8386,7 @@ public: virtual string emitSimpleOperator() override { V3ERROR_NA_RETURN(""); } virtual bool cleanOut() const override { V3ERROR_NA_RETURN(""); } virtual int instrCount() const override { return widthInstrs() * 2; } + virtual void dump(std::ostream& str = std::cout) const override; // op1 = expression to assign or another AstPattern (list if replicated) AstNode* lhssp() const { return op1p(); } AstNode* keyp() const { return op2p(); } // op2 = assignment key (Const, id Text) diff --git a/src/V3Width.cpp b/src/V3Width.cpp index bed690e32..3b311d6d9 100644 --- a/src/V3Width.cpp +++ b/src/V3Width.cpp @@ -3294,7 +3294,7 @@ private: nodep->dtypep()->numeric()); } } - if (newpatp) { VL_DO_DANGLING(pushDeletep(newpatp), newpatp); } + if (newpatp) VL_DO_DANGLING(pushDeletep(newpatp), newpatp); } if (newp) { nodep->replaceWith(newp); @@ -3347,7 +3347,7 @@ private: } } } - if (newpatp) { VL_DO_DANGLING(pushDeletep(newpatp), newpatp); } + if (newpatp) VL_DO_DANGLING(pushDeletep(newpatp), newpatp); } if (!patmap.empty()) nodep->v3error("Assignment pattern with too many elements"); if (newp) { @@ -3444,7 +3444,7 @@ private: } } } - if (newpatp) { VL_DO_DANGLING(pushDeletep(newpatp), newpatp); } + if (newpatp) VL_DO_DANGLING(pushDeletep(newpatp), newpatp); } if (!patmap.empty()) nodep->v3error("Assignment pattern with too many elements"); if (newp) {