diff options
| author | Jared Barocsi | 2021-10-05 12:33:23 -0700 |
|---|---|---|
| committer | GitHub | 2021-10-05 19:33:23 +0000 |
| commit | 110705eeace4f9165dc6377e55c86a599f37a465 (patch) | |
| tree | 4e6ed88311fd1ce08cebc0225868d2d103c6fae7 /core/src/main/scala/chisel3/Data.scala | |
| parent | ce15ad50a5c175db06c3bba5e3bf46b6c5466c47 (diff) | |
Deprecate auto-application of empty argument lists to parameterless functions (#2124)
* Migrate nullary funcs to parameterless versions
* Make deprecation message and dummy arguments clear and consistent
Co-authored-by: Megan Wachs <megan@sifive.com>
Diffstat (limited to 'core/src/main/scala/chisel3/Data.scala')
| -rw-r--r-- | core/src/main/scala/chisel3/Data.scala | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/core/src/main/scala/chisel3/Data.scala b/core/src/main/scala/chisel3/Data.scala index 32d83008..4ae29ce8 100644 --- a/core/src/main/scala/chisel3/Data.scala +++ b/core/src/main/scala/chisel3/Data.scala @@ -645,18 +645,28 @@ abstract class Data extends HasId with NamedComponent with SourceInfoDoc { } } - def isLit(): Boolean = litOption.isDefined + def isLit: Boolean = litOption.isDefined + + @deprecated("Calling this function with an empty argument list is invalid in Scala 3. Use the form without parentheses instead", "Chisel 3.5") + def isLit(dummy: Int*): Boolean = isLit + /** * If this is a literal that is representable as bits, returns the value as a BigInt. * If not a literal, or not representable as bits (for example, is or contains Analog), returns None. */ - def litOption(): Option[BigInt] + def litOption: Option[BigInt] + + @deprecated("Calling this function with an empty argument list is invalid in Scala 3. Use the form without parentheses instead", "Chisel 3.5") + def litOption(dummy: Int*): Option[BigInt] = litOption /** * Returns the literal value if this is a literal that is representable as bits, otherwise crashes. */ - def litValue(): BigInt = litOption.get + def litValue: BigInt = litOption.get + + @deprecated("Calling this function with an empty argument list is invalid in Scala 3. Use the form without parentheses instead", "Chisel 3.5") + def litValue(dummy: Int*): BigInt = litValue /** Returns the width, in bits, if currently known. */ final def getWidth: Int = @@ -679,7 +689,7 @@ abstract class Data extends HasId with NamedComponent with SourceInfoDoc { /** @group SourceInfoTransformMacro */ def do_asTypeOf[T <: Data](that: T)(implicit sourceInfo: SourceInfo, compileOptions: CompileOptions): T = { val thatCloned = Wire(that.cloneTypeFull) - thatCloned.connectFromBits(this.asUInt()) + thatCloned.connectFromBits(this.asUInt) thatCloned } @@ -695,7 +705,10 @@ abstract class Data extends HasId with NamedComponent with SourceInfoDoc { * @note Aggregates are recursively packed with the first element appearing * in the least-significant bits of the result. */ - final def asUInt(): UInt = macro SourceInfoTransform.noArg + final def asUInt: UInt = macro SourceInfoTransform.noArg + + @deprecated("Calling this function with an empty argument list is invalid in Scala 3. Use the form without parentheses instead", "Chisel 3.5") + final def asUInt(dummy: Int*): UInt = macro SourceInfoTransform.noArgDummy /** @group SourceInfoTransformMacro */ def do_asUInt(implicit sourceInfo: SourceInfo, compileOptions: CompileOptions): UInt @@ -715,7 +728,7 @@ trait WireFactory { val x = t.cloneTypeFull // Bind each element of x to being a Wire - x.bind(WireBinding(Builder.forcedUserModule, Builder.currentWhen())) + x.bind(WireBinding(Builder.forcedUserModule, Builder.currentWhen)) pushCommand(DefWire(sourceInfo, x)) if (!compileOptions.explicitInvalidate) { |
