You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-- [E007] TypeMismatchError: tests/playground/example.scala:26:15------------26|val_:Int= m // Error|^|Found: (Test.m :Test.T.G[(Test.f :Test.t.F)])
|Required:Int|----------------------------------------------------------------------------|Explanation (enabled by `-explain`)
|--------------------------------------||Tree:Test.m
|I tried to show that
| (Test.m :Test.T.G[(Test.f :Test.t.F)])
| conforms to
|Int| but none of the attempts shown below succeeded:
||==> (Test.m :Test.T.G[(Test.f :Test.t.F)]) <:Int|==>Test.T.G[(Test.f :Test.t.F)] <:Int|==> (Test.f :Test.t.F) match { caseOption[x] =>Int } <:Int|==>Any<:Int=false||The tests were made under the empty constraint
----------------------------------------------------------------------------
Expectation
Should compile.
Or otherwise have the same behaviour with or without the F type alias.
The text was updated successfully, but these errors were encountered:
Proposes to make `isMatch` true only for `MatchType`s and higher-kinded
abstraction of them.
As a result, code using `isMatch` to choose between a `TypeAlias` and
`MatchAlias` will now use a `TypeAlias` when aliasing a `MatchAlias`.
Which in turn allows for better de-aliasing, since `dealias` only
de-aliases standard type aliases.
`tryNormalize` on `AppliedType` should only attempt reduction if there
is an underlying match type. This could previously be identified by a
`MatchAlias` tycon. We now need a recursive check.
Fixes#19821
Compiler version
3.4.2-RC1
Minimized code
Output
Expectation
Should compile.
Or otherwise have the same behaviour with or without the
F
type alias.The text was updated successfully, but these errors were encountered: