That sounds incompatible with the T | Any
spec:
The union
T | Any
is not reducible to a simpler form. It represents an unknown static type with lower boundT
. That is, it represents an unknown set of objects which may be as large asobject
, or as small asT
, but no smaller.
Which implies that T | Any
should always be assignable to T
, which could be Never
, and is therefore assignable to Never
, yet it isn’t.