diff --git a/src/V3Clean.cpp b/src/V3Clean.cpp index bc239e0c7..bf7b7ae90 100644 --- a/src/V3Clean.cpp +++ b/src/V3Clean.cpp @@ -90,7 +90,8 @@ private: } void computeCppWidth (AstNode* nodep) { if (!nodep->user2() && nodep->hasDType()) { - if (nodep->castVar() || nodep->castNodeDType()) { // Don't want to change variable widths! + if (nodep->castVar() || nodep->castNodeDType() // Don't want to change variable widths! + || nodep->dtypep()->skipRefp()->castUnpackArrayDType()) { // Or arrays } else { setCppWidth(nodep); }