diff options
Diffstat (limited to 'chiselFrontend/src/main/scala/chisel3/core/Module.scala')
| -rw-r--r-- | chiselFrontend/src/main/scala/chisel3/core/Module.scala | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/chiselFrontend/src/main/scala/chisel3/core/Module.scala b/chiselFrontend/src/main/scala/chisel3/core/Module.scala index f97d51ac..5cd48a6a 100644 --- a/chiselFrontend/src/main/scala/chisel3/core/Module.scala +++ b/chiselFrontend/src/main/scala/chisel3/core/Module.scala @@ -41,8 +41,9 @@ object Module extends SourceInfoDoc { val whenDepth: Int = Builder.whenDepth // Save then clear clock and reset to prevent leaking scope, must be set again in the Module - val clockAndReset: Option[ClockAndReset] = Builder.currentClockAndReset - Builder.currentClockAndReset = None + val (saveClock, saveReset) = (Builder.currentClock, Builder.currentReset) + Builder.currentClock = None + Builder.currentReset = None // Execute the module, this has the following side effects: // - set currentModule @@ -59,9 +60,10 @@ object Module extends SourceInfoDoc { "This is probably due to rewrapping a Module instance with Module()." + sourceInfo.makeMessage(" See " + _)) } - Builder.currentModule = parent // Back to parent! + Builder.currentModule = parent // Back to parent! Builder.whenDepth = whenDepth - Builder.currentClockAndReset = clockAndReset // Back to clock and reset scope + Builder.currentClock = saveClock // Back to clock and reset scope + Builder.currentReset = saveReset val component = module.generateComponent() Builder.components += component |
