Skip to content

Commit bb412ab

Browse files
committed
Accept new baselines
1 parent 22475e8 commit bb412ab

File tree

3 files changed

+138
-0
lines changed

3 files changed

+138
-0
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
//// [contravariantTypeAliasInference.ts]
2+
type Func1<T> = (x: T) => void;
3+
type Func2<T> = ((x: T) => void) | undefined;
4+
5+
declare let f1: Func1<string>;
6+
declare let f2: Func1<"a">;
7+
8+
declare function foo<T>(f1: Func1<T>, f2: Func1<T>): void;
9+
10+
foo(f1, f2);
11+
12+
declare let g1: Func2<string>;
13+
declare let g2: Func2<"a">;
14+
15+
declare function bar<T>(g1: Func2<T>, g2: Func2<T>): void;
16+
17+
bar(f1, f2);
18+
bar(g1, g2);
19+
20+
21+
//// [contravariantTypeAliasInference.js]
22+
"use strict";
23+
foo(f1, f2);
24+
bar(f1, f2);
25+
bar(g1, g2);
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
=== tests/cases/compiler/contravariantTypeAliasInference.ts ===
2+
type Func1<T> = (x: T) => void;
3+
>Func1 : Symbol(Func1, Decl(contravariantTypeAliasInference.ts, 0, 0))
4+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 0, 11))
5+
>x : Symbol(x, Decl(contravariantTypeAliasInference.ts, 0, 17))
6+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 0, 11))
7+
8+
type Func2<T> = ((x: T) => void) | undefined;
9+
>Func2 : Symbol(Func2, Decl(contravariantTypeAliasInference.ts, 0, 31))
10+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 1, 11))
11+
>x : Symbol(x, Decl(contravariantTypeAliasInference.ts, 1, 18))
12+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 1, 11))
13+
14+
declare let f1: Func1<string>;
15+
>f1 : Symbol(f1, Decl(contravariantTypeAliasInference.ts, 3, 11))
16+
>Func1 : Symbol(Func1, Decl(contravariantTypeAliasInference.ts, 0, 0))
17+
18+
declare let f2: Func1<"a">;
19+
>f2 : Symbol(f2, Decl(contravariantTypeAliasInference.ts, 4, 11))
20+
>Func1 : Symbol(Func1, Decl(contravariantTypeAliasInference.ts, 0, 0))
21+
22+
declare function foo<T>(f1: Func1<T>, f2: Func1<T>): void;
23+
>foo : Symbol(foo, Decl(contravariantTypeAliasInference.ts, 4, 27))
24+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 6, 21))
25+
>f1 : Symbol(f1, Decl(contravariantTypeAliasInference.ts, 6, 24))
26+
>Func1 : Symbol(Func1, Decl(contravariantTypeAliasInference.ts, 0, 0))
27+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 6, 21))
28+
>f2 : Symbol(f2, Decl(contravariantTypeAliasInference.ts, 6, 37))
29+
>Func1 : Symbol(Func1, Decl(contravariantTypeAliasInference.ts, 0, 0))
30+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 6, 21))
31+
32+
foo(f1, f2);
33+
>foo : Symbol(foo, Decl(contravariantTypeAliasInference.ts, 4, 27))
34+
>f1 : Symbol(f1, Decl(contravariantTypeAliasInference.ts, 3, 11))
35+
>f2 : Symbol(f2, Decl(contravariantTypeAliasInference.ts, 4, 11))
36+
37+
declare let g1: Func2<string>;
38+
>g1 : Symbol(g1, Decl(contravariantTypeAliasInference.ts, 10, 11))
39+
>Func2 : Symbol(Func2, Decl(contravariantTypeAliasInference.ts, 0, 31))
40+
41+
declare let g2: Func2<"a">;
42+
>g2 : Symbol(g2, Decl(contravariantTypeAliasInference.ts, 11, 11))
43+
>Func2 : Symbol(Func2, Decl(contravariantTypeAliasInference.ts, 0, 31))
44+
45+
declare function bar<T>(g1: Func2<T>, g2: Func2<T>): void;
46+
>bar : Symbol(bar, Decl(contravariantTypeAliasInference.ts, 11, 27))
47+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 13, 21))
48+
>g1 : Symbol(g1, Decl(contravariantTypeAliasInference.ts, 13, 24))
49+
>Func2 : Symbol(Func2, Decl(contravariantTypeAliasInference.ts, 0, 31))
50+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 13, 21))
51+
>g2 : Symbol(g2, Decl(contravariantTypeAliasInference.ts, 13, 37))
52+
>Func2 : Symbol(Func2, Decl(contravariantTypeAliasInference.ts, 0, 31))
53+
>T : Symbol(T, Decl(contravariantTypeAliasInference.ts, 13, 21))
54+
55+
bar(f1, f2);
56+
>bar : Symbol(bar, Decl(contravariantTypeAliasInference.ts, 11, 27))
57+
>f1 : Symbol(f1, Decl(contravariantTypeAliasInference.ts, 3, 11))
58+
>f2 : Symbol(f2, Decl(contravariantTypeAliasInference.ts, 4, 11))
59+
60+
bar(g1, g2);
61+
>bar : Symbol(bar, Decl(contravariantTypeAliasInference.ts, 11, 27))
62+
>g1 : Symbol(g1, Decl(contravariantTypeAliasInference.ts, 10, 11))
63+
>g2 : Symbol(g2, Decl(contravariantTypeAliasInference.ts, 11, 11))
64+
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
=== tests/cases/compiler/contravariantTypeAliasInference.ts ===
2+
type Func1<T> = (x: T) => void;
3+
>Func1 : Func1<T>
4+
>x : T
5+
6+
type Func2<T> = ((x: T) => void) | undefined;
7+
>Func2 : Func2<T>
8+
>x : T
9+
10+
declare let f1: Func1<string>;
11+
>f1 : Func1<string>
12+
13+
declare let f2: Func1<"a">;
14+
>f2 : Func1<"a">
15+
16+
declare function foo<T>(f1: Func1<T>, f2: Func1<T>): void;
17+
>foo : <T>(f1: Func1<T>, f2: Func1<T>) => void
18+
>f1 : Func1<T>
19+
>f2 : Func1<T>
20+
21+
foo(f1, f2);
22+
>foo(f1, f2) : void
23+
>foo : <T>(f1: Func1<T>, f2: Func1<T>) => void
24+
>f1 : Func1<string>
25+
>f2 : Func1<"a">
26+
27+
declare let g1: Func2<string>;
28+
>g1 : Func2<string>
29+
30+
declare let g2: Func2<"a">;
31+
>g2 : Func2<"a">
32+
33+
declare function bar<T>(g1: Func2<T>, g2: Func2<T>): void;
34+
>bar : <T>(g1: Func2<T>, g2: Func2<T>) => void
35+
>g1 : Func2<T>
36+
>g2 : Func2<T>
37+
38+
bar(f1, f2);
39+
>bar(f1, f2) : void
40+
>bar : <T>(g1: Func2<T>, g2: Func2<T>) => void
41+
>f1 : Func1<string>
42+
>f2 : Func1<"a">
43+
44+
bar(g1, g2);
45+
>bar(g1, g2) : void
46+
>bar : <T>(g1: Func2<T>, g2: Func2<T>) => void
47+
>g1 : Func2<string>
48+
>g2 : Func2<"a">
49+

0 commit comments

Comments
 (0)