diplomacy: reprotect Node bundles after module construction is completed
This commit is contained in:
@ -165,7 +165,9 @@ sealed trait LazyModuleImpLike extends BaseModule
|
||||
protected[diplomacy] def instantiate() = {
|
||||
val childDangles = wrapper.children.reverse.flatMap { c =>
|
||||
implicit val sourceInfo = c.info
|
||||
Module(c.module).dangles
|
||||
val mod = Module(c.module)
|
||||
mod.finishInstantiate()
|
||||
mod.dangles
|
||||
}
|
||||
wrapper.instantiate()
|
||||
val nodeDangles = wrapper.nodes.reverse.flatMap(_.instantiate())
|
||||
@ -184,6 +186,10 @@ sealed trait LazyModuleImpLike extends BaseModule
|
||||
}
|
||||
(auto, dangles)
|
||||
}
|
||||
|
||||
protected[diplomacy] def finishInstantiate() {
|
||||
wrapper.nodes.reverse.foreach { _.finishInstantiate() }
|
||||
}
|
||||
}
|
||||
|
||||
class LazyModuleImp(val wrapper: LazyModule) extends MultiIOModule with LazyModuleImpLike {
|
||||
|
Reference in New Issue
Block a user