scala3 icon indicating copy to clipboard operation
scala3 copied to clipboard

In modularity, unnamed context bound not recognised doesn't match named bound

Open japgolly opened this issue 1 week ago • 3 comments

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.

japgolly avatar Dec 01 '25 02:12 japgolly