mirror of
https://github.com/verilator/verilator.git
synced 2026-10-07 10:33:13 +02:00
Support parameter access from arrays of interfaces, #2155.
This commit is contained in:
+8
-1
@@ -355,9 +355,16 @@ private:
|
||||
if (VN_IS(backp, Var)
|
||||
&& VN_CAST(backp, Var)->isIfaceRef()
|
||||
&& VN_CAST(backp, Var)->childDTypep()
|
||||
&& VN_CAST(VN_CAST(backp, Var)->childDTypep(), IfaceRefDType)) {
|
||||
&& (VN_CAST(VN_CAST(backp, Var)->childDTypep(), IfaceRefDType)
|
||||
|| (VN_CAST(VN_CAST(backp, Var)->childDTypep(), UnpackArrayDType)
|
||||
&& VN_CAST(VN_CAST(backp, Var)->childDTypep()->getChildDTypep(),
|
||||
IfaceRefDType)))) {
|
||||
AstIfaceRefDType* ifacerefp
|
||||
= VN_CAST(VN_CAST(backp, Var)->childDTypep(), IfaceRefDType);
|
||||
if (!ifacerefp) {
|
||||
ifacerefp = VN_CAST(VN_CAST(backp, Var)->childDTypep()->getChildDTypep(),
|
||||
IfaceRefDType);
|
||||
}
|
||||
// Interfaces passed in on the port map have ifaces
|
||||
if (AstIface* ifacep = ifacerefp->ifacep()) {
|
||||
if (dotted == backp->name()) {
|
||||
|
||||
Reference in New Issue
Block a user