diff options
Diffstat (limited to 'core/src')
| -rw-r--r-- | core/src/main/scala/chisel3/internal/Builder.scala | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/core/src/main/scala/chisel3/internal/Builder.scala b/core/src/main/scala/chisel3/internal/Builder.scala index d05a69f7..e55f1af7 100644 --- a/core/src/main/scala/chisel3/internal/Builder.scala +++ b/core/src/main/scala/chisel3/internal/Builder.scala @@ -603,8 +603,24 @@ private[chisel3] object Builder { throwException(m) } + def getScalaMajorVersion: Int = { + val "2" :: major :: _ :: Nil = chisel3.BuildInfo.scalaVersion.split("\\.").toList + major.toInt + } + + def checkScalaVersion(): Unit = { + if (getScalaMajorVersion == 11) { + val url = _root_.firrtl.stage.transforms.CheckScalaVersion.migrationDocumentLink + val msg = s"Chisel 3.4 is the last version that will support Scala 2.11. " + + s"Please upgrade to Scala 2.12. See $url" + deprecated(msg, Some("")) + } + } + + def build[T <: RawModule](f: => T): (Circuit, T) = { dynamicContextVar.withValue(Some(new DynamicContext())) { + checkScalaVersion() errors.info("Elaborating design...") val mod = f mod.forceName(None, mod.name, globalNamespace) |
