File: implicitAnyWidenToAny.types

package info (click to toggle)
node-typescript 3.3.3333-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 324,548 kB
  • sloc: makefile: 6; sh: 3
file content (100 lines) | stat: -rw-r--r-- 1,912 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
=== tests/cases/compiler/implicitAnyWidenToAny.ts ===
// these should be errors
var x = null;                        // error at "x"
>x : any
>null : null

var x1 = undefined;		             // error at "x1"
>x1 : any
>undefined : undefined

var widenArray = [null, undefined];  // error at "widenArray"
>widenArray : any[]
>[null, undefined] : null[]
>null : null
>undefined : undefined

var emptyArray = [];
>emptyArray : any[]
>[] : undefined[]

// these should not be error
class AnimalObj {
>AnimalObj : AnimalObj

      x:any;
>x : any
}
var foo = 5;
>foo : number
>5 : 5

var bar = "Hello World";
>bar : string
>"Hello World" : "Hello World"

var foo1: any = null;
>foo1 : any
>null : null

var foo2: any = undefined;
>foo2 : any
>undefined : undefined

var temp: number = 5;
>temp : number
>5 : 5

var c: AnimalObj = { x: null }; 
>c : AnimalObj
>{ x: null } : { x: null; }
>x : null
>null : null

var array1 = ["Bob",2];
>array1 : (string | number)[]
>["Bob",2] : (string | number)[]
>"Bob" : "Bob"
>2 : 2

var array2: any[] = [];
>array2 : any[]
>[] : undefined[]

var array3: any[] = [null, undefined];
>array3 : any[]
>[null, undefined] : null[]
>null : null
>undefined : undefined

var array4: number[] = [null, undefined];
>array4 : number[]
>[null, undefined] : null[]
>null : null
>undefined : undefined

var array5 = <any[]>[null, undefined];
>array5 : any[]
><any[]>[null, undefined] : any[]
>[null, undefined] : null[]
>null : null
>undefined : undefined

var objLit: { new (n: number): any; };
>objLit : new (n: number) => any
>n : number

function anyReturnFunc(): any { }
>anyReturnFunc : () => any

var obj0 = new objLit(1);
>obj0 : any
>new objLit(1) : any
>objLit : new (n: number) => any
>1 : 1

var obj1 = anyReturnFunc();
>obj1 : any
>anyReturnFunc() : any
>anyReturnFunc : () => any