* Treat never-like intersections as never * Accept new baselines * Fix compiler issues revealed by increased intersection correctness * Delete fourslash tests that are no longer applicable * Include isNeverLikeIntersection check in getNormalizedType * Erase never-like types in several more places * Check that base types are not never-like * Add comments * Revert isNeverLikeType check in getIndexType (keyof shouldn't resolve member types) * Introduce getReducedType for union and intersection types * Don't reduce in getApparentType * Avoid relationship check in resolveMappedTypeMembers * Accept new baselines * Don't call getReducedType in getIndexType * Ensure reduced and unreduced forms of a type can compare identical * Reduce types before converting them to string representation * Accept new baselines * Reduce intersections before obtaining keyof X * Add tests * Accept new baselines * Fix comment in tests * Don't infer from empty intersection types * Add tests * Accept new baselines * Defer instantiation of mapped type property types * Accept new baselines * Include more precise type in diagnostic * Accept new baselines * Minor optimization * Improve error message * Optional properties in intersections are never discriminants |
||
---|---|---|
.. | ||
contextualTypeWithUnionTypeCallSignatures.ts | ||
contextualTypeWithUnionTypeIndexSignatures.ts | ||
contextualTypeWithUnionTypeMembers.ts | ||
contextualTypeWithUnionTypeObjectLiteral.ts | ||
discriminatedUnionTypes1.ts | ||
discriminatedUnionTypes2.ts | ||
unionTypeCallSignatures.ts | ||
unionTypeCallSignatures2.ts | ||
unionTypeCallSignatures3.ts | ||
unionTypeCallSignatures4.ts | ||
unionTypeCallSignatures5.ts | ||
unionTypeCallSignatures6.ts | ||
unionTypeConstructSignatures.ts | ||
unionTypeEquivalence.ts | ||
unionTypeFromArrayLiteral.ts | ||
unionTypeIndexSignature.ts | ||
unionTypeMembers.ts | ||
unionTypePropertyAccessibility.ts | ||
unionTypeReadonly.ts | ||
unionTypeReduction.ts | ||
unionTypeReduction2.ts | ||
unionTypeWithIndexSignature.ts |