summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/src/main/scala/chisel3/internal/Error.scala1
-rw-r--r--src/test/scala/chiselTests/stage/ChiselMainSpec.scala13
2 files changed, 14 insertions, 0 deletions
diff --git a/core/src/main/scala/chisel3/internal/Error.scala b/core/src/main/scala/chisel3/internal/Error.scala
index 003be86f..bf0b9d20 100644
--- a/core/src/main/scala/chisel3/internal/Error.scala
+++ b/core/src/main/scala/chisel3/internal/Error.scala
@@ -164,6 +164,7 @@ private[chisel3] class ErrorLog {
val chiselPrefixes = Set(
"java.",
"scala.",
+ "chisel3.",
"chisel3.internal.",
"chisel3.experimental.",
"chisel3.package$" // for some compatibility / deprecated types
diff --git a/src/test/scala/chiselTests/stage/ChiselMainSpec.scala b/src/test/scala/chiselTests/stage/ChiselMainSpec.scala
index 0d400abd..679677d0 100644
--- a/src/test/scala/chiselTests/stage/ChiselMainSpec.scala
+++ b/src/test/scala/chiselTests/stage/ChiselMainSpec.scala
@@ -35,6 +35,11 @@ object ChiselMainSpec {
require(false)
}
+ /** A module that triggers a Builder.error (as opposed to exception) */
+ class BuilderErrorModule extends RawModule {
+ val w = Wire(UInt(8.W))
+ w(3, -1)
+ }
}
case class TestClassAspect() extends InspectorAspect[RawModule] ({
@@ -152,6 +157,14 @@ class ChiselMainSpec extends AnyFeatureSpec with GivenWhenThen with Matchers wit
result = 1)
).foreach(runStageExpectFiles)
}
+ Feature("Builder.error source locator") {
+ Seq(
+ ChiselMainTest(args = Array("-X", "none"),
+ generator = Some(classOf[BuilderErrorModule]),
+ stdout = Some("ChiselMainSpec.scala:41: Invalid bit range (3,-1) in class chiselTests.stage.ChiselMainSpec$BuilderErrorModule"),
+ result = 1)
+ ).foreach(runStageExpectFiles)
+ }
Feature("Specifying a custom output file") {
runStageExpectFiles(ChiselMainTest(