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
typeInit[X<:NonEmptyTuple] <:Tuple=Xmatch {
case _ *:EmptyTuple=>EmptyTuplecase x *: xs => x *:Init[xs] // statically `xs` does not match, in practice it will not fail
}
Output
compiles ok
Expectation
A static failure for the recursive step as xs is not <: NonEmptyTuple, or is all checking left until a concrete type is applied?