mirror of
https://github.com/verilator/verilator.git
synced 2024-12-29 10:47:34 +00:00
Internals: Move interface error to later phase, prep for later commit. No functional change intended.
This commit is contained in:
parent
5b56c80830
commit
1dc6fd3d93
@ -489,6 +489,15 @@ public:
|
||||
}
|
||||
} else if (ifacerefp->ifaceViaCellp()->dead()) {
|
||||
if (varp->isIfaceRef()) {
|
||||
if (forPrimary() && !varp->isIfaceParent()
|
||||
&& !v3Global.opt.topIfacesSupported()) {
|
||||
// Only AstIfaceRefDType's at this point correspond to ports;
|
||||
// haven't made additional ones for interconnect yet, so assert is simple
|
||||
// What breaks later is we don't have a Scope/Cell representing
|
||||
// the interface to attach to
|
||||
varp->v3warn(E_UNSUPPORTED,
|
||||
"Unsupported: Interfaced port on top level module");
|
||||
}
|
||||
ifacerefp->v3error("Parent instance's interface is not found: "
|
||||
<< AstNode::prettyNameQ(ifacerefp->ifaceName()));
|
||||
} else {
|
||||
|
@ -398,15 +398,6 @@ class LinkParseVisitor final : public VNVisitor {
|
||||
VN_AS(nodep->valuep()->unlinkFrBack(), NodeExpr)});
|
||||
}
|
||||
}
|
||||
if (nodep->isIfaceRef() && !nodep->isIfaceParent() && !v3Global.opt.topIfacesSupported()) {
|
||||
// Only AstIfaceRefDType's at this point correspond to ports;
|
||||
// haven't made additional ones for interconnect yet, so assert is simple
|
||||
// What breaks later is we don't have a Scope/Cell representing
|
||||
// the interface to attach to
|
||||
if (m_modp->level() <= 2) {
|
||||
nodep->v3warn(E_UNSUPPORTED, "Unsupported: Interfaced port on top level module");
|
||||
}
|
||||
}
|
||||
}
|
||||
void visit(AstConst* nodep) override {
|
||||
if (nodep->num().autoExtend() && nodep->fileline()->language() < V3LangCode::L1800_2005) {
|
||||
|
Loading…
Reference in New Issue
Block a user