Compiler version
3.8.0-RC2
Minimized code
//> using scala 3.8.0-RC2
//> using option -new-syntax -source:future -language:experimental.modularity
trait Monoid:
type Self
object Monoid:
def ok[A: Monoid as A]: A is Monoid = A
def ko[A: Monoid]: A is Monoid = A
Output
[error] Found: (A : <context-bound-companion>[(evidence$1 : Monoid{type Self = A})])
[error] Required: A is Monoid
[error] def ko[A: Monoid]: A is Monoid = A
[error] ^
Expectation
ko should compile. It's the same type.