Closed
Description
According to the documentation on AnyVal, Strings are not value types, so I believe the following shouldn't compile:
val a: AnyVal = "foo"
Here is how scalac complains:
$ echo 'val a: AnyVal = ""' | scala
Welcome to Scala 2.13.0-M5 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_201).
scala> val a: AnyVal = ""
^
error: the result type of an implicit conversion must be more specific than AnyVal
$ echo 'val a: AnyVal = ""' | scala -Yno-predef
Welcome to Scala 2.13.0-M5 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_201).
scala> val a: AnyVal = ""
^
error: type mismatch;
found : String("")
required: AnyVal