Skip to content

Commit 1f0d0f7

Browse files
authored
Set Error.prototype.cause type to unknown (#70) (microsoft#49639)
Signed-off-by: Abdul-Azeez Lawal <[email protected]>
1 parent 2876f3a commit 1f0d0f7

12 files changed

+218
-45
lines changed

src/lib/es2022.error.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
interface ErrorOptions {
2-
cause?: Error;
2+
cause?: unknown;
33
}
44

55
interface Error {
6-
cause?: Error;
6+
cause?: unknown;
77
}
88

99
interface ErrorConstructor {

tests/baselines/reference/errorCause(target=es2021).errors.txt

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,38 @@
1-
tests/cases/compiler/errorCause.ts(1,28): error TS2554: Expected 0-1 arguments, but got 2.
2-
tests/cases/compiler/errorCause.ts(2,5): error TS2550: Property 'cause' does not exist on type 'Error'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2022' or later.
3-
tests/cases/compiler/errorCause.ts(4,22): error TS2554: Expected 0-1 arguments, but got 2.
4-
tests/cases/compiler/errorCause.ts(5,23): error TS2554: Expected 0-1 arguments, but got 2.
5-
tests/cases/compiler/errorCause.ts(6,27): error TS2554: Expected 0-1 arguments, but got 2.
6-
tests/cases/compiler/errorCause.ts(7,24): error TS2554: Expected 0-1 arguments, but got 2.
1+
tests/cases/compiler/errorCause.ts(3,28): error TS2554: Expected 0-1 arguments, but got 2.
2+
tests/cases/compiler/errorCause.ts(4,5): error TS2550: Property 'cause' does not exist on type 'Error'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2022' or later.
3+
tests/cases/compiler/errorCause.ts(5,35): error TS2554: Expected 0-1 arguments, but got 2.
4+
tests/cases/compiler/errorCause.ts(6,12): error TS2550: Property 'cause' does not exist on type 'Error'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2022' or later.
75
tests/cases/compiler/errorCause.ts(8,22): error TS2554: Expected 0-1 arguments, but got 2.
8-
tests/cases/compiler/errorCause.ts(9,21): error TS2554: Expected 0-1 arguments, but got 2.
9-
tests/cases/compiler/errorCause.ts(10,31): error TS2554: Expected 1-2 arguments, but got 3.
6+
tests/cases/compiler/errorCause.ts(9,22): error TS2554: Expected 0-1 arguments, but got 2.
7+
tests/cases/compiler/errorCause.ts(10,23): error TS2554: Expected 0-1 arguments, but got 2.
8+
tests/cases/compiler/errorCause.ts(11,27): error TS2554: Expected 0-1 arguments, but got 2.
9+
tests/cases/compiler/errorCause.ts(12,24): error TS2554: Expected 0-1 arguments, but got 2.
10+
tests/cases/compiler/errorCause.ts(13,22): error TS2554: Expected 0-1 arguments, but got 2.
11+
tests/cases/compiler/errorCause.ts(14,21): error TS2554: Expected 0-1 arguments, but got 2.
12+
tests/cases/compiler/errorCause.ts(15,31): error TS2554: Expected 1-2 arguments, but got 3.
1013

1114

12-
==== tests/cases/compiler/errorCause.ts (9 errors) ====
15+
==== tests/cases/compiler/errorCause.ts (12 errors) ====
16+
declare const a: unknown;
17+
1318
let err = new Error("foo", { cause: new Error("bar") });
1419
~~~~~~~~~~~~~~~~~~~~~~~~~~~
1520
!!! error TS2554: Expected 0-1 arguments, but got 2.
1621
err.cause;
1722
~~~~~
1823
!!! error TS2550: Property 'cause' does not exist on type 'Error'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2022' or later.
24+
let anotherErr = new Error("foo", { cause: a });
25+
~~~~~~~~~~~~
26+
!!! error TS2554: Expected 0-1 arguments, but got 2.
27+
anotherErr.cause;
28+
~~~~~
29+
!!! error TS2550: Property 'cause' does not exist on type 'Error'. Do you need to change your target library? Try changing the 'lib' compiler option to 'es2022' or later.
1930

2031
new EvalError("foo", { cause: new Error("bar") });
2132
~~~~~~~~~~~~~~~~~~~~~~~~~~~
33+
!!! error TS2554: Expected 0-1 arguments, but got 2.
34+
new EvalError("foo", { cause: a });
35+
~~~~~~~~~~~~
2236
!!! error TS2554: Expected 0-1 arguments, but got 2.
2337
new RangeError("foo", { cause: new Error("bar") });
2438
~~~~~~~~~~~~~~~~~~~~~~~~~~~

tests/baselines/reference/errorCause(target=es2021).js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
//// [errorCause.ts]
2+
declare const a: unknown;
3+
24
let err = new Error("foo", { cause: new Error("bar") });
35
err.cause;
6+
let anotherErr = new Error("foo", { cause: a });
7+
anotherErr.cause;
48

59
new EvalError("foo", { cause: new Error("bar") });
10+
new EvalError("foo", { cause: a });
611
new RangeError("foo", { cause: new Error("bar") });
712
new ReferenceError("foo", { cause: new Error("bar") });
813
new SyntaxError("foo", { cause: new Error("bar") });
@@ -14,7 +19,10 @@ new AggregateError([], "foo", { cause: new Error("bar") });
1419
//// [errorCause.js]
1520
let err = new Error("foo", { cause: new Error("bar") });
1621
err.cause;
22+
let anotherErr = new Error("foo", { cause: a });
23+
anotherErr.cause;
1724
new EvalError("foo", { cause: new Error("bar") });
25+
new EvalError("foo", { cause: a });
1826
new RangeError("foo", { cause: new Error("bar") });
1927
new ReferenceError("foo", { cause: new Error("bar") });
2028
new SyntaxError("foo", { cause: new Error("bar") });
Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,62 @@
11
=== tests/cases/compiler/errorCause.ts ===
2+
declare const a: unknown;
3+
>a : Symbol(a, Decl(errorCause.ts, 0, 13))
4+
25
let err = new Error("foo", { cause: new Error("bar") });
3-
>err : Symbol(err, Decl(errorCause.ts, 0, 3))
6+
>err : Symbol(err, Decl(errorCause.ts, 2, 3))
47
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
5-
>cause : Symbol(cause, Decl(errorCause.ts, 0, 28))
8+
>cause : Symbol(cause, Decl(errorCause.ts, 2, 28))
69
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
710

811
err.cause;
9-
>err : Symbol(err, Decl(errorCause.ts, 0, 3))
12+
>err : Symbol(err, Decl(errorCause.ts, 2, 3))
13+
14+
let anotherErr = new Error("foo", { cause: a });
15+
>anotherErr : Symbol(anotherErr, Decl(errorCause.ts, 4, 3))
16+
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
17+
>cause : Symbol(cause, Decl(errorCause.ts, 4, 35))
18+
>a : Symbol(a, Decl(errorCause.ts, 0, 13))
19+
20+
anotherErr.cause;
21+
>anotherErr : Symbol(anotherErr, Decl(errorCause.ts, 4, 3))
1022

1123
new EvalError("foo", { cause: new Error("bar") });
1224
>EvalError : Symbol(EvalError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
13-
>cause : Symbol(cause, Decl(errorCause.ts, 3, 22))
25+
>cause : Symbol(cause, Decl(errorCause.ts, 7, 22))
1426
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
1527

28+
new EvalError("foo", { cause: a });
29+
>EvalError : Symbol(EvalError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
30+
>cause : Symbol(cause, Decl(errorCause.ts, 8, 22))
31+
>a : Symbol(a, Decl(errorCause.ts, 0, 13))
32+
1633
new RangeError("foo", { cause: new Error("bar") });
1734
>RangeError : Symbol(RangeError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
18-
>cause : Symbol(cause, Decl(errorCause.ts, 4, 23))
35+
>cause : Symbol(cause, Decl(errorCause.ts, 9, 23))
1936
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
2037

2138
new ReferenceError("foo", { cause: new Error("bar") });
2239
>ReferenceError : Symbol(ReferenceError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
23-
>cause : Symbol(cause, Decl(errorCause.ts, 5, 27))
40+
>cause : Symbol(cause, Decl(errorCause.ts, 10, 27))
2441
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
2542

2643
new SyntaxError("foo", { cause: new Error("bar") });
2744
>SyntaxError : Symbol(SyntaxError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
28-
>cause : Symbol(cause, Decl(errorCause.ts, 6, 24))
45+
>cause : Symbol(cause, Decl(errorCause.ts, 11, 24))
2946
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
3047

3148
new TypeError("foo", { cause: new Error("bar") });
3249
>TypeError : Symbol(TypeError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
33-
>cause : Symbol(cause, Decl(errorCause.ts, 7, 22))
50+
>cause : Symbol(cause, Decl(errorCause.ts, 12, 22))
3451
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
3552

3653
new URIError("foo", { cause: new Error("bar") });
3754
>URIError : Symbol(URIError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
38-
>cause : Symbol(cause, Decl(errorCause.ts, 8, 21))
55+
>cause : Symbol(cause, Decl(errorCause.ts, 13, 21))
3956
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
4057

4158
new AggregateError([], "foo", { cause: new Error("bar") });
4259
>AggregateError : Symbol(AggregateError, Decl(lib.es2021.promise.d.ts, --, --), Decl(lib.es2021.promise.d.ts, --, --))
43-
>cause : Symbol(cause, Decl(errorCause.ts, 9, 31))
60+
>cause : Symbol(cause, Decl(errorCause.ts, 14, 31))
4461
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
4562

tests/baselines/reference/errorCause(target=es2021).types

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
=== tests/cases/compiler/errorCause.ts ===
2+
declare const a: unknown;
3+
>a : unknown
4+
25
let err = new Error("foo", { cause: new Error("bar") });
36
>err : Error
47
>new Error("foo", { cause: new Error("bar") }) : Error
@@ -15,6 +18,20 @@ err.cause;
1518
>err : Error
1619
>cause : any
1720

21+
let anotherErr = new Error("foo", { cause: a });
22+
>anotherErr : Error
23+
>new Error("foo", { cause: a }) : Error
24+
>Error : ErrorConstructor
25+
>"foo" : "foo"
26+
>{ cause: a } : { cause: unknown; }
27+
>cause : unknown
28+
>a : unknown
29+
30+
anotherErr.cause;
31+
>anotherErr.cause : any
32+
>anotherErr : Error
33+
>cause : any
34+
1835
new EvalError("foo", { cause: new Error("bar") });
1936
>new EvalError("foo", { cause: new Error("bar") }) : EvalError & Error
2037
>EvalError : EvalErrorConstructor
@@ -25,6 +42,14 @@ new EvalError("foo", { cause: new Error("bar") });
2542
>Error : ErrorConstructor
2643
>"bar" : "bar"
2744

45+
new EvalError("foo", { cause: a });
46+
>new EvalError("foo", { cause: a }) : EvalError & Error
47+
>EvalError : EvalErrorConstructor
48+
>"foo" : "foo"
49+
>{ cause: a } : { cause: unknown; }
50+
>cause : unknown
51+
>a : unknown
52+
2853
new RangeError("foo", { cause: new Error("bar") });
2954
>new RangeError("foo", { cause: new Error("bar") }) : RangeError & Error
3055
>RangeError : RangeErrorConstructor

tests/baselines/reference/errorCause(target=es2022).js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
//// [errorCause.ts]
2+
declare const a: unknown;
3+
24
let err = new Error("foo", { cause: new Error("bar") });
35
err.cause;
6+
let anotherErr = new Error("foo", { cause: a });
7+
anotherErr.cause;
48

59
new EvalError("foo", { cause: new Error("bar") });
10+
new EvalError("foo", { cause: a });
611
new RangeError("foo", { cause: new Error("bar") });
712
new ReferenceError("foo", { cause: new Error("bar") });
813
new SyntaxError("foo", { cause: new Error("bar") });
@@ -14,7 +19,10 @@ new AggregateError([], "foo", { cause: new Error("bar") });
1419
//// [errorCause.js]
1520
let err = new Error("foo", { cause: new Error("bar") });
1621
err.cause;
22+
let anotherErr = new Error("foo", { cause: a });
23+
anotherErr.cause;
1724
new EvalError("foo", { cause: new Error("bar") });
25+
new EvalError("foo", { cause: a });
1826
new RangeError("foo", { cause: new Error("bar") });
1927
new ReferenceError("foo", { cause: new Error("bar") });
2028
new SyntaxError("foo", { cause: new Error("bar") });
Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,66 @@
11
=== tests/cases/compiler/errorCause.ts ===
2+
declare const a: unknown;
3+
>a : Symbol(a, Decl(errorCause.ts, 0, 13))
4+
25
let err = new Error("foo", { cause: new Error("bar") });
3-
>err : Symbol(err, Decl(errorCause.ts, 0, 3))
6+
>err : Symbol(err, Decl(errorCause.ts, 2, 3))
47
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
5-
>cause : Symbol(cause, Decl(errorCause.ts, 0, 28))
8+
>cause : Symbol(cause, Decl(errorCause.ts, 2, 28))
69
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
710

811
err.cause;
912
>err.cause : Symbol(Error.cause, Decl(lib.es2022.error.d.ts, --, --))
10-
>err : Symbol(err, Decl(errorCause.ts, 0, 3))
13+
>err : Symbol(err, Decl(errorCause.ts, 2, 3))
14+
>cause : Symbol(Error.cause, Decl(lib.es2022.error.d.ts, --, --))
15+
16+
let anotherErr = new Error("foo", { cause: a });
17+
>anotherErr : Symbol(anotherErr, Decl(errorCause.ts, 4, 3))
18+
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
19+
>cause : Symbol(cause, Decl(errorCause.ts, 4, 35))
20+
>a : Symbol(a, Decl(errorCause.ts, 0, 13))
21+
22+
anotherErr.cause;
23+
>anotherErr.cause : Symbol(Error.cause, Decl(lib.es2022.error.d.ts, --, --))
24+
>anotherErr : Symbol(anotherErr, Decl(errorCause.ts, 4, 3))
1125
>cause : Symbol(Error.cause, Decl(lib.es2022.error.d.ts, --, --))
1226

1327
new EvalError("foo", { cause: new Error("bar") });
1428
>EvalError : Symbol(EvalError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
15-
>cause : Symbol(cause, Decl(errorCause.ts, 3, 22))
29+
>cause : Symbol(cause, Decl(errorCause.ts, 7, 22))
1630
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
1731

32+
new EvalError("foo", { cause: a });
33+
>EvalError : Symbol(EvalError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
34+
>cause : Symbol(cause, Decl(errorCause.ts, 8, 22))
35+
>a : Symbol(a, Decl(errorCause.ts, 0, 13))
36+
1837
new RangeError("foo", { cause: new Error("bar") });
1938
>RangeError : Symbol(RangeError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
20-
>cause : Symbol(cause, Decl(errorCause.ts, 4, 23))
39+
>cause : Symbol(cause, Decl(errorCause.ts, 9, 23))
2140
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
2241

2342
new ReferenceError("foo", { cause: new Error("bar") });
2443
>ReferenceError : Symbol(ReferenceError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
25-
>cause : Symbol(cause, Decl(errorCause.ts, 5, 27))
44+
>cause : Symbol(cause, Decl(errorCause.ts, 10, 27))
2645
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
2746

2847
new SyntaxError("foo", { cause: new Error("bar") });
2948
>SyntaxError : Symbol(SyntaxError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
30-
>cause : Symbol(cause, Decl(errorCause.ts, 6, 24))
49+
>cause : Symbol(cause, Decl(errorCause.ts, 11, 24))
3150
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
3251

3352
new TypeError("foo", { cause: new Error("bar") });
3453
>TypeError : Symbol(TypeError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
35-
>cause : Symbol(cause, Decl(errorCause.ts, 7, 22))
54+
>cause : Symbol(cause, Decl(errorCause.ts, 12, 22))
3655
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
3756

3857
new URIError("foo", { cause: new Error("bar") });
3958
>URIError : Symbol(URIError, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
40-
>cause : Symbol(cause, Decl(errorCause.ts, 8, 21))
59+
>cause : Symbol(cause, Decl(errorCause.ts, 13, 21))
4160
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
4261

4362
new AggregateError([], "foo", { cause: new Error("bar") });
4463
>AggregateError : Symbol(AggregateError, Decl(lib.es2021.promise.d.ts, --, --), Decl(lib.es2021.promise.d.ts, --, --))
45-
>cause : Symbol(cause, Decl(errorCause.ts, 9, 31))
64+
>cause : Symbol(cause, Decl(errorCause.ts, 14, 31))
4665
>Error : Symbol(Error, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es2022.error.d.ts, --, --))
4766

tests/baselines/reference/errorCause(target=es2022).types

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
=== tests/cases/compiler/errorCause.ts ===
2+
declare const a: unknown;
3+
>a : unknown
4+
25
let err = new Error("foo", { cause: new Error("bar") });
36
>err : Error
47
>new Error("foo", { cause: new Error("bar") }) : Error
@@ -11,9 +14,23 @@ let err = new Error("foo", { cause: new Error("bar") });
1114
>"bar" : "bar"
1215

1316
err.cause;
14-
>err.cause : Error
17+
>err.cause : unknown
1518
>err : Error
16-
>cause : Error
19+
>cause : unknown
20+
21+
let anotherErr = new Error("foo", { cause: a });
22+
>anotherErr : Error
23+
>new Error("foo", { cause: a }) : Error
24+
>Error : ErrorConstructor
25+
>"foo" : "foo"
26+
>{ cause: a } : { cause: unknown; }
27+
>cause : unknown
28+
>a : unknown
29+
30+
anotherErr.cause;
31+
>anotherErr.cause : unknown
32+
>anotherErr : Error
33+
>cause : unknown
1734

1835
new EvalError("foo", { cause: new Error("bar") });
1936
>new EvalError("foo", { cause: new Error("bar") }) : EvalError
@@ -25,6 +42,14 @@ new EvalError("foo", { cause: new Error("bar") });
2542
>Error : ErrorConstructor
2643
>"bar" : "bar"
2744

45+
new EvalError("foo", { cause: a });
46+
>new EvalError("foo", { cause: a }) : EvalError
47+
>EvalError : EvalErrorConstructor
48+
>"foo" : "foo"
49+
>{ cause: a } : { cause: unknown; }
50+
>cause : unknown
51+
>a : unknown
52+
2853
new RangeError("foo", { cause: new Error("bar") });
2954
>new RangeError("foo", { cause: new Error("bar") }) : RangeError
3055
>RangeError : RangeErrorConstructor

tests/baselines/reference/errorCause(target=esnext).js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
//// [errorCause.ts]
2+
declare const a: unknown;
3+
24
let err = new Error("foo", { cause: new Error("bar") });
35
err.cause;
6+
let anotherErr = new Error("foo", { cause: a });
7+
anotherErr.cause;
48

59
new EvalError("foo", { cause: new Error("bar") });
10+
new EvalError("foo", { cause: a });
611
new RangeError("foo", { cause: new Error("bar") });
712
new ReferenceError("foo", { cause: new Error("bar") });
813
new SyntaxError("foo", { cause: new Error("bar") });
@@ -14,7 +19,10 @@ new AggregateError([], "foo", { cause: new Error("bar") });
1419
//// [errorCause.js]
1520
let err = new Error("foo", { cause: new Error("bar") });
1621
err.cause;
22+
let anotherErr = new Error("foo", { cause: a });
23+
anotherErr.cause;
1724
new EvalError("foo", { cause: new Error("bar") });
25+
new EvalError("foo", { cause: a });
1826
new RangeError("foo", { cause: new Error("bar") });
1927
new ReferenceError("foo", { cause: new Error("bar") });
2028
new SyntaxError("foo", { cause: new Error("bar") });

0 commit comments

Comments
 (0)