Fix equivalence checking when replacing type parameters (#5213) (#5255)

This commit is contained in:
Han Qi
2024-10-03 21:19:07 +01:00
committed by GitHub
parent c05c48aaf3
commit bf2b4e1b6a
4 changed files with 46 additions and 1 deletions
+2 -1
View File
@@ -768,7 +768,8 @@ class ParamProcessor final {
}
}
} else if (AstParamTypeDType* const modvarp = pinp->modPTypep()) {
AstNodeDType* const exprp = VN_CAST(pinp->exprp(), NodeDType);
AstNodeDType* rawTypep = VN_CAST(pinp->exprp(), NodeDType);
AstNodeDType* const exprp = rawTypep ? rawTypep->skipRefToEnump() : nullptr;
const AstNodeDType* const origp = modvarp->skipRefToEnump();
if (!exprp) {
pinp->v3error("Parameter type pin value isn't a type: Param "