当 A 显然是单例时,“A 没有可用的单例值”

Fab*_*ani 6 scala scala-3

我不明白为什么这段代码不能编译并失败:

没有可用于 A 的单例值,
其中: A 是具有约束的类型变量 >: ("yo" : String) 和 <: Singleton

case class Wrapper[A <: Singleton](a: A)(using ValueOf[A])

def test[A <: Singleton](blabla: Wrapper[A]): Unit = ()

test(Wrapper("yo"))
Run Code Online (Sandbox Code Playgroud)

这是预期的还是 Scala 3 中的错误?

请注意,如果我提取Wrapper("yo")然后它的工作原理:

case class Wrapper[A <: Singleton](a: A)(using ValueOf[A])

def test[A <: Singleton](blabla: Wrapper[A]): Unit = ()

val value = Wrapper("yo")
test(value)
Run Code Online (Sandbox Code Playgroud)