Skip to content

Commit fc0eed3

Browse files
lib: remove length field from SharedArrayBuffer (#40858)
* fix(lib): SharedArrayBuffer does not have a `length` field * Revert formatting change. * test: add tests for SharedArrayBuffer.length Co-authored-by: Daniel Rosenwasser <[email protected]>
1 parent 0c7d45a commit fc0eed3

File tree

6 files changed

+34
-34
lines changed

6 files changed

+34
-34
lines changed

src/lib/es2017.sharedmemory.d.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,6 @@ interface SharedArrayBuffer {
77
*/
88
readonly byteLength: number;
99

10-
/*
11-
* The SharedArrayBuffer constructor's length property whose value is 1.
12-
*/
13-
length: number;
1410
/**
1511
* Returns a section of an SharedArrayBuffer.
1612
*/
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
tests/cases/conformance/es2017/useSharedArrayBuffer6.ts(2,6): error TS2339: Property 'length' does not exist on type 'SharedArrayBuffer'.
2+
3+
4+
==== tests/cases/conformance/es2017/useSharedArrayBuffer6.ts (1 errors) ====
5+
var foge = new SharedArrayBuffer(1024);
6+
foge.length; // should error
7+
~~~~~~
8+
!!! error TS2339: Property 'length' does not exist on type 'SharedArrayBuffer'.
9+
10+
var length = SharedArrayBuffer.length;
11+
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
//// [useSharedArrayBuffer6.ts]
22
var foge = new SharedArrayBuffer(1024);
3-
var species = foge[Symbol.species];
4-
var stringTag = foge[Symbol.toStringTag];
3+
foge.length; // should error
4+
5+
var length = SharedArrayBuffer.length;
6+
57

68
//// [useSharedArrayBuffer6.js]
79
var foge = new SharedArrayBuffer(1024);
8-
var species = foge[Symbol.species];
9-
var stringTag = foge[Symbol.toStringTag];
10+
foge.length; // should error
11+
var length = SharedArrayBuffer.length;

tests/baselines/reference/useSharedArrayBuffer6.symbols

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,12 @@ var foge = new SharedArrayBuffer(1024);
33
>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 0, 3))
44
>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --))
55

6-
var species = foge[Symbol.species];
7-
>species : Symbol(species, Decl(useSharedArrayBuffer6.ts, 1, 3))
6+
foge.length; // should error
87
>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 0, 3))
9-
>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
10-
>Symbol : Symbol(Symbol, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
11-
>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
128

13-
var stringTag = foge[Symbol.toStringTag];
14-
>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer6.ts, 2, 3))
15-
>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 0, 3))
16-
>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
17-
>Symbol : Symbol(Symbol, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
18-
>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
9+
var length = SharedArrayBuffer.length;
10+
>length : Symbol(length, Decl(useSharedArrayBuffer6.ts, 3, 3))
11+
>SharedArrayBuffer.length : Symbol(Function.length, Decl(lib.es5.d.ts, --, --))
12+
>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --))
13+
>length : Symbol(Function.length, Decl(lib.es5.d.ts, --, --))
1914

tests/baselines/reference/useSharedArrayBuffer6.types

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,14 @@ var foge = new SharedArrayBuffer(1024);
55
>SharedArrayBuffer : SharedArrayBufferConstructor
66
>1024 : 1024
77

8-
var species = foge[Symbol.species];
9-
>species : SharedArrayBuffer
10-
>foge[Symbol.species] : SharedArrayBuffer
8+
foge.length; // should error
9+
>foge.length : any
1110
>foge : SharedArrayBuffer
12-
>Symbol.species : symbol
13-
>Symbol : SymbolConstructor
14-
>species : symbol
11+
>length : any
1512

16-
var stringTag = foge[Symbol.toStringTag];
17-
>stringTag : "SharedArrayBuffer"
18-
>foge[Symbol.toStringTag] : "SharedArrayBuffer"
19-
>foge : SharedArrayBuffer
20-
>Symbol.toStringTag : symbol
21-
>Symbol : SymbolConstructor
22-
>toStringTag : symbol
13+
var length = SharedArrayBuffer.length;
14+
>length : number
15+
>SharedArrayBuffer.length : number
16+
>SharedArrayBuffer : SharedArrayBufferConstructor
17+
>length : number
2318

tests/cases/conformance/es2017/useSharedArrayBuffer6.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@
22
// @lib: es6,es2017.sharedmemory
33

44
var foge = new SharedArrayBuffer(1024);
5-
var species = foge[Symbol.species];
6-
var stringTag = foge[Symbol.toStringTag];
5+
foge.length; // should error
6+
7+
var length = SharedArrayBuffer.length;

0 commit comments

Comments
 (0)