## Compiler version `main` ## Minimized code <!-- This code should be self contained, compilable (with possible failures) and as small as possible. Ideally, we should be able to just copy this code in a file and run `scalac` (and maybe `scala`) to reproduce the issue. --> ```Scala import language.experimental.captureChecking trait IO def foo[X <: IO^](x: X): IO^ = x ``` ## Output ```scala -- [E007] Type Mismatch Error: issues/cc-typeapp.scala:4:31 ------------------------------------------------------------------------------------------------------------------------------------------------------------ 4 |def foo[X <: IO^](x: X): IO^ = x | ^ | Found: (x : X) | Required: IO^ | | longer explanation available when compiling with `-explain` ``` ## Expectation It should work.