From 4a6396ca5ff9dfba9019552012bce459ef3c3b1e Mon Sep 17 00:00:00 2001 From: Jim Lawson Date: Tue, 25 Apr 2017 08:44:35 -0700 Subject: Remove explicit import of NotStrict - fixes #492 (#494) * Remove explicit import of NotStrict - fixes #492 * Provide macro for MemBase.apply(). * Provide macro for MemBase.apply(). Since a macro cannot override an abstract method, provide a concrete apply method n VecLike() that we can override with a macro. * Remove concrete apply() in VecLike. Since MemBase no longer extends the trait VecLike, we do not require a concrete method to which we can apply a macro to extract the appropriate CompileOptions. --- chiselFrontend/src/main/scala/chisel3/core/BlackBox.scala | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'chiselFrontend/src/main/scala/chisel3/core/BlackBox.scala') diff --git a/chiselFrontend/src/main/scala/chisel3/core/BlackBox.scala b/chiselFrontend/src/main/scala/chisel3/core/BlackBox.scala index 7a1394bb..cd072ba9 100644 --- a/chiselFrontend/src/main/scala/chisel3/core/BlackBox.scala +++ b/chiselFrontend/src/main/scala/chisel3/core/BlackBox.scala @@ -6,8 +6,6 @@ import chisel3.internal.Builder.pushCommand import chisel3.internal.firrtl._ import chisel3.internal.throwException import chisel3.internal.sourceinfo.{SourceInfo, UnlocatableSourceInfo} -// TODO: remove this once we have CompileOptions threaded through the macro system. -import chisel3.core.ExplicitCompileOptions.NotStrict /** Parameters for BlackBoxes */ sealed abstract class Param @@ -132,7 +130,7 @@ abstract class ExtModule(val params: Map[String, Param] = Map.empty[String, Para * }}} * @note The parameters API is experimental and may change */ -abstract class BlackBox(val params: Map[String, Param] = Map.empty[String, Param]) extends BaseBlackBox { +abstract class BlackBox(val params: Map[String, Param] = Map.empty[String, Param])(implicit compileOptions: CompileOptions) extends BaseBlackBox { def io: Record // Allow access to bindings from the compatibility package -- cgit v1.2.3