mirror of
https://github.com/microsoft/TypeScript.git
synced 2025-11-18 17:21:48 +00:00
Accept new baselines
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
//// [nonNullableAndObjectIntersections.ts]
|
||||
// These should all resolve to never
|
||||
|
||||
type T0 = NonNullable<null>;
|
||||
type T1 = NonNullable<undefined>;
|
||||
type T2 = null & {};
|
||||
type T3 = undefined & {};
|
||||
type T4 = null & undefined;
|
||||
type T6 = null & { a: string } & {};
|
||||
|
||||
// Repro from #50519
|
||||
|
||||
type NonNullableNew<T> = T & {};
|
||||
type NonNullableOld<T> = T extends null | undefined ? never : T;
|
||||
|
||||
type TestNew = NonNullableNew<null>;
|
||||
type TestOld = NonNullableOld<null>;
|
||||
|
||||
|
||||
//// [nonNullableAndObjectIntersections.js]
|
||||
// These should all resolve to never
|
||||
@@ -0,0 +1,45 @@
|
||||
=== tests/cases/compiler/nonNullableAndObjectIntersections.ts ===
|
||||
// These should all resolve to never
|
||||
|
||||
type T0 = NonNullable<null>;
|
||||
>T0 : Symbol(T0, Decl(nonNullableAndObjectIntersections.ts, 0, 0))
|
||||
>NonNullable : Symbol(NonNullable, Decl(lib.es5.d.ts, --, --))
|
||||
|
||||
type T1 = NonNullable<undefined>;
|
||||
>T1 : Symbol(T1, Decl(nonNullableAndObjectIntersections.ts, 2, 28))
|
||||
>NonNullable : Symbol(NonNullable, Decl(lib.es5.d.ts, --, --))
|
||||
|
||||
type T2 = null & {};
|
||||
>T2 : Symbol(T2, Decl(nonNullableAndObjectIntersections.ts, 3, 33))
|
||||
|
||||
type T3 = undefined & {};
|
||||
>T3 : Symbol(T3, Decl(nonNullableAndObjectIntersections.ts, 4, 20))
|
||||
|
||||
type T4 = null & undefined;
|
||||
>T4 : Symbol(T4, Decl(nonNullableAndObjectIntersections.ts, 5, 25))
|
||||
|
||||
type T6 = null & { a: string } & {};
|
||||
>T6 : Symbol(T6, Decl(nonNullableAndObjectIntersections.ts, 6, 27))
|
||||
>a : Symbol(a, Decl(nonNullableAndObjectIntersections.ts, 7, 18))
|
||||
|
||||
// Repro from #50519
|
||||
|
||||
type NonNullableNew<T> = T & {};
|
||||
>NonNullableNew : Symbol(NonNullableNew, Decl(nonNullableAndObjectIntersections.ts, 7, 36))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 11, 20))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 11, 20))
|
||||
|
||||
type NonNullableOld<T> = T extends null | undefined ? never : T;
|
||||
>NonNullableOld : Symbol(NonNullableOld, Decl(nonNullableAndObjectIntersections.ts, 11, 32))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 12, 20))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 12, 20))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 12, 20))
|
||||
|
||||
type TestNew = NonNullableNew<null>;
|
||||
>TestNew : Symbol(TestNew, Decl(nonNullableAndObjectIntersections.ts, 12, 64))
|
||||
>NonNullableNew : Symbol(NonNullableNew, Decl(nonNullableAndObjectIntersections.ts, 7, 36))
|
||||
|
||||
type TestOld = NonNullableOld<null>;
|
||||
>TestOld : Symbol(TestOld, Decl(nonNullableAndObjectIntersections.ts, 14, 36))
|
||||
>NonNullableOld : Symbol(NonNullableOld, Decl(nonNullableAndObjectIntersections.ts, 11, 32))
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
=== tests/cases/compiler/nonNullableAndObjectIntersections.ts ===
|
||||
// These should all resolve to never
|
||||
|
||||
type T0 = NonNullable<null>;
|
||||
>T0 : never
|
||||
>null : null
|
||||
|
||||
type T1 = NonNullable<undefined>;
|
||||
>T1 : never
|
||||
|
||||
type T2 = null & {};
|
||||
>T2 : never
|
||||
>null : null
|
||||
|
||||
type T3 = undefined & {};
|
||||
>T3 : never
|
||||
|
||||
type T4 = null & undefined;
|
||||
>T4 : never
|
||||
>null : null
|
||||
|
||||
type T6 = null & { a: string } & {};
|
||||
>T6 : never
|
||||
>null : null
|
||||
>a : string
|
||||
|
||||
// Repro from #50519
|
||||
|
||||
type NonNullableNew<T> = T & {};
|
||||
>NonNullableNew : NonNullableNew<T>
|
||||
|
||||
type NonNullableOld<T> = T extends null | undefined ? never : T;
|
||||
>NonNullableOld : NonNullableOld<T>
|
||||
>null : null
|
||||
|
||||
type TestNew = NonNullableNew<null>;
|
||||
>TestNew : never
|
||||
>null : null
|
||||
|
||||
type TestOld = NonNullableOld<null>;
|
||||
>TestOld : never
|
||||
>null : null
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
//// [nonNullableAndObjectIntersections.ts]
|
||||
// These should all resolve to never
|
||||
|
||||
type T0 = NonNullable<null>;
|
||||
type T1 = NonNullable<undefined>;
|
||||
type T2 = null & {};
|
||||
type T3 = undefined & {};
|
||||
type T4 = null & undefined;
|
||||
type T6 = null & { a: string } & {};
|
||||
|
||||
// Repro from #50519
|
||||
|
||||
type NonNullableNew<T> = T & {};
|
||||
type NonNullableOld<T> = T extends null | undefined ? never : T;
|
||||
|
||||
type TestNew = NonNullableNew<null>;
|
||||
type TestOld = NonNullableOld<null>;
|
||||
|
||||
|
||||
//// [nonNullableAndObjectIntersections.js]
|
||||
"use strict";
|
||||
// These should all resolve to never
|
||||
@@ -0,0 +1,45 @@
|
||||
=== tests/cases/compiler/nonNullableAndObjectIntersections.ts ===
|
||||
// These should all resolve to never
|
||||
|
||||
type T0 = NonNullable<null>;
|
||||
>T0 : Symbol(T0, Decl(nonNullableAndObjectIntersections.ts, 0, 0))
|
||||
>NonNullable : Symbol(NonNullable, Decl(lib.es5.d.ts, --, --))
|
||||
|
||||
type T1 = NonNullable<undefined>;
|
||||
>T1 : Symbol(T1, Decl(nonNullableAndObjectIntersections.ts, 2, 28))
|
||||
>NonNullable : Symbol(NonNullable, Decl(lib.es5.d.ts, --, --))
|
||||
|
||||
type T2 = null & {};
|
||||
>T2 : Symbol(T2, Decl(nonNullableAndObjectIntersections.ts, 3, 33))
|
||||
|
||||
type T3 = undefined & {};
|
||||
>T3 : Symbol(T3, Decl(nonNullableAndObjectIntersections.ts, 4, 20))
|
||||
|
||||
type T4 = null & undefined;
|
||||
>T4 : Symbol(T4, Decl(nonNullableAndObjectIntersections.ts, 5, 25))
|
||||
|
||||
type T6 = null & { a: string } & {};
|
||||
>T6 : Symbol(T6, Decl(nonNullableAndObjectIntersections.ts, 6, 27))
|
||||
>a : Symbol(a, Decl(nonNullableAndObjectIntersections.ts, 7, 18))
|
||||
|
||||
// Repro from #50519
|
||||
|
||||
type NonNullableNew<T> = T & {};
|
||||
>NonNullableNew : Symbol(NonNullableNew, Decl(nonNullableAndObjectIntersections.ts, 7, 36))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 11, 20))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 11, 20))
|
||||
|
||||
type NonNullableOld<T> = T extends null | undefined ? never : T;
|
||||
>NonNullableOld : Symbol(NonNullableOld, Decl(nonNullableAndObjectIntersections.ts, 11, 32))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 12, 20))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 12, 20))
|
||||
>T : Symbol(T, Decl(nonNullableAndObjectIntersections.ts, 12, 20))
|
||||
|
||||
type TestNew = NonNullableNew<null>;
|
||||
>TestNew : Symbol(TestNew, Decl(nonNullableAndObjectIntersections.ts, 12, 64))
|
||||
>NonNullableNew : Symbol(NonNullableNew, Decl(nonNullableAndObjectIntersections.ts, 7, 36))
|
||||
|
||||
type TestOld = NonNullableOld<null>;
|
||||
>TestOld : Symbol(TestOld, Decl(nonNullableAndObjectIntersections.ts, 14, 36))
|
||||
>NonNullableOld : Symbol(NonNullableOld, Decl(nonNullableAndObjectIntersections.ts, 11, 32))
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
=== tests/cases/compiler/nonNullableAndObjectIntersections.ts ===
|
||||
// These should all resolve to never
|
||||
|
||||
type T0 = NonNullable<null>;
|
||||
>T0 : never
|
||||
>null : null
|
||||
|
||||
type T1 = NonNullable<undefined>;
|
||||
>T1 : never
|
||||
|
||||
type T2 = null & {};
|
||||
>T2 : never
|
||||
>null : null
|
||||
|
||||
type T3 = undefined & {};
|
||||
>T3 : never
|
||||
|
||||
type T4 = null & undefined;
|
||||
>T4 : never
|
||||
>null : null
|
||||
|
||||
type T6 = null & { a: string } & {};
|
||||
>T6 : never
|
||||
>null : null
|
||||
>a : string
|
||||
|
||||
// Repro from #50519
|
||||
|
||||
type NonNullableNew<T> = T & {};
|
||||
>NonNullableNew : NonNullableNew<T>
|
||||
|
||||
type NonNullableOld<T> = T extends null | undefined ? never : T;
|
||||
>NonNullableOld : NonNullableOld<T>
|
||||
>null : null
|
||||
|
||||
type TestNew = NonNullableNew<null>;
|
||||
>TestNew : never
|
||||
>null : null
|
||||
|
||||
type TestOld = NonNullableOld<null>;
|
||||
>TestOld : never
|
||||
>null : null
|
||||
|
||||
Reference in New Issue
Block a user