diff --git a/Jakefile.js b/Jakefile.js index d36d9a6857a..3540655af4a 100644 --- a/Jakefile.js +++ b/Jakefile.js @@ -188,7 +188,10 @@ var es2016LibrarySourceMap = es2016LibrarySource.map(function (source) { return { target: "lib." + source, sources: ["header.d.ts", source] }; }); -var es2017LibrarySource = ["es2017.object.d.ts"]; +var es2017LibrarySource = [ + "es2017.object.d.ts", + "es2017.sharedmemory.d.ts" +]; var es2017LibrarySourceMap = es2017LibrarySource.map(function (source) { return { target: "lib." + source, sources: ["header.d.ts", source] }; diff --git a/src/compiler/commandLineParser.ts b/src/compiler/commandLineParser.ts index 8fc74b3a3b6..7be050ccef5 100644 --- a/src/compiler/commandLineParser.ts +++ b/src/compiler/commandLineParser.ts @@ -401,7 +401,8 @@ namespace ts { "es2015.symbol": "lib.es2015.symbol.d.ts", "es2015.symbol.wellknown": "lib.es2015.symbol.wellknown.d.ts", "es2016.array.include": "lib.es2016.array.include.d.ts", - "es2017.object": "lib.es2017.object.d.ts" + "es2017.object": "lib.es2017.object.d.ts", + "es2017.sharedmemory": "lib.es2017.sharedmemory.d.ts" }, }, description: Diagnostics.Specify_library_files_to_be_included_in_the_compilation_Colon diff --git a/src/lib/es2017.d.ts b/src/lib/es2017.d.ts index aad5ff4d2ce..13f9d93f444 100644 --- a/src/lib/es2017.d.ts +++ b/src/lib/es2017.d.ts @@ -1,2 +1,3 @@ /// -/// \ No newline at end of file +/// +/// \ No newline at end of file diff --git a/src/lib/es2017.sharedmemory.d.ts b/src/lib/es2017.sharedmemory.d.ts new file mode 100644 index 00000000000..440b74ff016 --- /dev/null +++ b/src/lib/es2017.sharedmemory.d.ts @@ -0,0 +1,27 @@ +/// +/// + +interface SharedArrayBuffer { + /** + * Read-only. The length of the ArrayBuffer (in bytes). + */ + readonly byteLength: number; + + /* + * The SharedArrayBuffer constructor's length property whose value is 1. + */ + length: number; + /** + * Returns a section of an SharedArrayBuffer. + */ + slice(begin:number, end?:number): SharedArrayBuffer; + readonly [Symbol.species]: SharedArrayBuffer; + readonly [Symbol.toStringTag]: "SharedArrayBuffer"; +} + +interface SharedArrayBufferConstructor { + readonly prototype: SharedArrayBuffer; + new (byteLength: number): SharedArrayBuffer; +} + +declare var SharedArrayBuffer: SharedArrayBufferConstructor; \ No newline at end of file diff --git a/tests/baselines/reference/useSharedArrayBuffer1.js b/tests/baselines/reference/useSharedArrayBuffer1.js new file mode 100644 index 00000000000..d607095f115 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer1.js @@ -0,0 +1,10 @@ +//// [useSharedArrayBuffer1.ts] + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; + +//// [useSharedArrayBuffer1.js] +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; diff --git a/tests/baselines/reference/useSharedArrayBuffer1.symbols b/tests/baselines/reference/useSharedArrayBuffer1.symbols new file mode 100644 index 00000000000..cc5a9a5e199 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer1.symbols @@ -0,0 +1,18 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer1.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : Symbol(foge, Decl(useSharedArrayBuffer1.ts, 1, 3)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) + +var bar = foge.slice(1, 10); +>bar : Symbol(bar, Decl(useSharedArrayBuffer1.ts, 2, 3)) +>foge.slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer1.ts, 1, 3)) +>slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --)) + +var len = foge.byteLength; +>len : Symbol(len, Decl(useSharedArrayBuffer1.ts, 3, 3)) +>foge.byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer1.ts, 1, 3)) +>byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --)) + diff --git a/tests/baselines/reference/useSharedArrayBuffer1.types b/tests/baselines/reference/useSharedArrayBuffer1.types new file mode 100644 index 00000000000..95ef3df11de --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer1.types @@ -0,0 +1,23 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer1.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : SharedArrayBuffer +>new SharedArrayBuffer(1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>1024 : number + +var bar = foge.slice(1, 10); +>bar : SharedArrayBuffer +>foge.slice(1, 10) : SharedArrayBuffer +>foge.slice : (begin: number, end?: number) => SharedArrayBuffer +>foge : SharedArrayBuffer +>slice : (begin: number, end?: number) => SharedArrayBuffer +>1 : number +>10 : number + +var len = foge.byteLength; +>len : number +>foge.byteLength : number +>foge : SharedArrayBuffer +>byteLength : number + diff --git a/tests/baselines/reference/useSharedArrayBuffer2.errors.txt b/tests/baselines/reference/useSharedArrayBuffer2.errors.txt new file mode 100644 index 00000000000..c5eb85dcbba --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer2.errors.txt @@ -0,0 +1,10 @@ +tests/cases/conformance/es2017/useSharedArrayBuffer2.ts(2,16): error TS2304: Cannot find name 'SharedArrayBuffer'. + + +==== tests/cases/conformance/es2017/useSharedArrayBuffer2.ts (1 errors) ==== + + var foge = new SharedArrayBuffer(1024); + ~~~~~~~~~~~~~~~~~ +!!! error TS2304: Cannot find name 'SharedArrayBuffer'. + var bar = foge.slice(1, 10); + var len = foge.byteLength; \ No newline at end of file diff --git a/tests/baselines/reference/useSharedArrayBuffer2.js b/tests/baselines/reference/useSharedArrayBuffer2.js new file mode 100644 index 00000000000..ed67d837c79 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer2.js @@ -0,0 +1,10 @@ +//// [useSharedArrayBuffer2.ts] + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; + +//// [useSharedArrayBuffer2.js] +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; diff --git a/tests/baselines/reference/useSharedArrayBuffer3.errors.txt b/tests/baselines/reference/useSharedArrayBuffer3.errors.txt new file mode 100644 index 00000000000..868bfe5a584 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer3.errors.txt @@ -0,0 +1,10 @@ +tests/cases/conformance/es2017/useSharedArrayBuffer3.ts(2,16): error TS2304: Cannot find name 'SharedArrayBuffer'. + + +==== tests/cases/conformance/es2017/useSharedArrayBuffer3.ts (1 errors) ==== + + var foge = new SharedArrayBuffer(1024); + ~~~~~~~~~~~~~~~~~ +!!! error TS2304: Cannot find name 'SharedArrayBuffer'. + var bar = foge.slice(1, 10); + var len = foge.byteLength; \ No newline at end of file diff --git a/tests/baselines/reference/useSharedArrayBuffer3.js b/tests/baselines/reference/useSharedArrayBuffer3.js new file mode 100644 index 00000000000..b6e65e3bd66 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer3.js @@ -0,0 +1,10 @@ +//// [useSharedArrayBuffer3.ts] + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; + +//// [useSharedArrayBuffer3.js] +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; diff --git a/tests/baselines/reference/useSharedArrayBuffer4.js b/tests/baselines/reference/useSharedArrayBuffer4.js new file mode 100644 index 00000000000..3bdc2bdd2e7 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer4.js @@ -0,0 +1,14 @@ +//// [useSharedArrayBuffer4.ts] + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; +var len = foge.byteLength; + +//// [useSharedArrayBuffer4.js] +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; +var len = foge.byteLength; diff --git a/tests/baselines/reference/useSharedArrayBuffer4.symbols b/tests/baselines/reference/useSharedArrayBuffer4.symbols new file mode 100644 index 00000000000..7a8a2a167aa --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer4.symbols @@ -0,0 +1,32 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer4.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) + +var bar = foge.slice(1, 10); +>bar : Symbol(bar, Decl(useSharedArrayBuffer4.ts, 2, 3)) +>foge.slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3)) +>slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --)) + +var species = foge[Symbol.species]; +>species : Symbol(species, Decl(useSharedArrayBuffer4.ts, 3, 3)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3)) +>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --)) +>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + +var stringTag = foge[Symbol.toStringTag]; +>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer4.ts, 4, 3)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3)) +>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --)) +>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + +var len = foge.byteLength; +>len : Symbol(len, Decl(useSharedArrayBuffer4.ts, 5, 3)) +>foge.byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3)) +>byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --)) + diff --git a/tests/baselines/reference/useSharedArrayBuffer4.types b/tests/baselines/reference/useSharedArrayBuffer4.types new file mode 100644 index 00000000000..e182cd654aa --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer4.types @@ -0,0 +1,39 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer4.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : SharedArrayBuffer +>new SharedArrayBuffer(1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>1024 : number + +var bar = foge.slice(1, 10); +>bar : SharedArrayBuffer +>foge.slice(1, 10) : SharedArrayBuffer +>foge.slice : (begin: number, end?: number) => SharedArrayBuffer +>foge : SharedArrayBuffer +>slice : (begin: number, end?: number) => SharedArrayBuffer +>1 : number +>10 : number + +var species = foge[Symbol.species]; +>species : SharedArrayBuffer +>foge[Symbol.species] : SharedArrayBuffer +>foge : SharedArrayBuffer +>Symbol.species : symbol +>Symbol : SymbolConstructor +>species : symbol + +var stringTag = foge[Symbol.toStringTag]; +>stringTag : "SharedArrayBuffer" +>foge[Symbol.toStringTag] : "SharedArrayBuffer" +>foge : SharedArrayBuffer +>Symbol.toStringTag : symbol +>Symbol : SymbolConstructor +>toStringTag : symbol + +var len = foge.byteLength; +>len : number +>foge.byteLength : number +>foge : SharedArrayBuffer +>byteLength : number + diff --git a/tests/baselines/reference/useSharedArrayBuffer5.js b/tests/baselines/reference/useSharedArrayBuffer5.js new file mode 100644 index 00000000000..df8da8850d3 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer5.js @@ -0,0 +1,10 @@ +//// [useSharedArrayBuffer5.ts] + +var foge = new SharedArrayBuffer(1024); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; + +//// [useSharedArrayBuffer5.js] +var foge = new SharedArrayBuffer(1024); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; diff --git a/tests/baselines/reference/useSharedArrayBuffer5.symbols b/tests/baselines/reference/useSharedArrayBuffer5.symbols new file mode 100644 index 00000000000..a6eab16ac6a --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer5.symbols @@ -0,0 +1,20 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer5.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : Symbol(foge, Decl(useSharedArrayBuffer5.ts, 1, 3)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) + +var species = foge[Symbol.species]; +>species : Symbol(species, Decl(useSharedArrayBuffer5.ts, 2, 3)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer5.ts, 1, 3)) +>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --)) +>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + +var stringTag = foge[Symbol.toStringTag]; +>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer5.ts, 3, 3)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer5.ts, 1, 3)) +>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --)) +>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + diff --git a/tests/baselines/reference/useSharedArrayBuffer5.types b/tests/baselines/reference/useSharedArrayBuffer5.types new file mode 100644 index 00000000000..9e7627a503b --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer5.types @@ -0,0 +1,24 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer5.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : SharedArrayBuffer +>new SharedArrayBuffer(1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>1024 : number + +var species = foge[Symbol.species]; +>species : SharedArrayBuffer +>foge[Symbol.species] : SharedArrayBuffer +>foge : SharedArrayBuffer +>Symbol.species : symbol +>Symbol : SymbolConstructor +>species : symbol + +var stringTag = foge[Symbol.toStringTag]; +>stringTag : "SharedArrayBuffer" +>foge[Symbol.toStringTag] : "SharedArrayBuffer" +>foge : SharedArrayBuffer +>Symbol.toStringTag : symbol +>Symbol : SymbolConstructor +>toStringTag : symbol + diff --git a/tests/baselines/reference/useSharedArrayBuffer6.js b/tests/baselines/reference/useSharedArrayBuffer6.js new file mode 100644 index 00000000000..598bc46217e --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer6.js @@ -0,0 +1,10 @@ +//// [useSharedArrayBuffer6.ts] + +var foge = new SharedArrayBuffer(1024); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; + +//// [useSharedArrayBuffer6.js] +var foge = new SharedArrayBuffer(1024); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; diff --git a/tests/baselines/reference/useSharedArrayBuffer6.symbols b/tests/baselines/reference/useSharedArrayBuffer6.symbols new file mode 100644 index 00000000000..afdbac86cd6 --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer6.symbols @@ -0,0 +1,20 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer6.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 1, 3)) +>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --)) + +var species = foge[Symbol.species]; +>species : Symbol(species, Decl(useSharedArrayBuffer6.ts, 2, 3)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 1, 3)) +>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --)) +>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + +var stringTag = foge[Symbol.toStringTag]; +>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer6.ts, 3, 3)) +>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 1, 3)) +>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) +>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --)) +>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --)) + diff --git a/tests/baselines/reference/useSharedArrayBuffer6.types b/tests/baselines/reference/useSharedArrayBuffer6.types new file mode 100644 index 00000000000..45439b9331e --- /dev/null +++ b/tests/baselines/reference/useSharedArrayBuffer6.types @@ -0,0 +1,24 @@ +=== tests/cases/conformance/es2017/useSharedArrayBuffer6.ts === + +var foge = new SharedArrayBuffer(1024); +>foge : SharedArrayBuffer +>new SharedArrayBuffer(1024) : SharedArrayBuffer +>SharedArrayBuffer : SharedArrayBufferConstructor +>1024 : number + +var species = foge[Symbol.species]; +>species : SharedArrayBuffer +>foge[Symbol.species] : SharedArrayBuffer +>foge : SharedArrayBuffer +>Symbol.species : symbol +>Symbol : SymbolConstructor +>species : symbol + +var stringTag = foge[Symbol.toStringTag]; +>stringTag : "SharedArrayBuffer" +>foge[Symbol.toStringTag] : "SharedArrayBuffer" +>foge : SharedArrayBuffer +>Symbol.toStringTag : symbol +>Symbol : SymbolConstructor +>toStringTag : symbol + diff --git a/tests/cases/conformance/es2017/useSharedArrayBuffer1.ts b/tests/cases/conformance/es2017/useSharedArrayBuffer1.ts new file mode 100644 index 00000000000..78d8c23f98a --- /dev/null +++ b/tests/cases/conformance/es2017/useSharedArrayBuffer1.ts @@ -0,0 +1,6 @@ +// @target: es5 +// @lib: es5,es2017.sharedmemory + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; \ No newline at end of file diff --git a/tests/cases/conformance/es2017/useSharedArrayBuffer2.ts b/tests/cases/conformance/es2017/useSharedArrayBuffer2.ts new file mode 100644 index 00000000000..68d7702fa2a --- /dev/null +++ b/tests/cases/conformance/es2017/useSharedArrayBuffer2.ts @@ -0,0 +1,6 @@ +// @target: es5 +// @lib: es5 + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; \ No newline at end of file diff --git a/tests/cases/conformance/es2017/useSharedArrayBuffer3.ts b/tests/cases/conformance/es2017/useSharedArrayBuffer3.ts new file mode 100644 index 00000000000..62b3b3a21a9 --- /dev/null +++ b/tests/cases/conformance/es2017/useSharedArrayBuffer3.ts @@ -0,0 +1,5 @@ +// @target: es6 + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var len = foge.byteLength; \ No newline at end of file diff --git a/tests/cases/conformance/es2017/useSharedArrayBuffer4.ts b/tests/cases/conformance/es2017/useSharedArrayBuffer4.ts new file mode 100644 index 00000000000..4d47c739ff3 --- /dev/null +++ b/tests/cases/conformance/es2017/useSharedArrayBuffer4.ts @@ -0,0 +1,8 @@ +// @target: es6 +// @lib: es2017 + +var foge = new SharedArrayBuffer(1024); +var bar = foge.slice(1, 10); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; +var len = foge.byteLength; \ No newline at end of file diff --git a/tests/cases/conformance/es2017/useSharedArrayBuffer5.ts b/tests/cases/conformance/es2017/useSharedArrayBuffer5.ts new file mode 100644 index 00000000000..3606c1c6346 --- /dev/null +++ b/tests/cases/conformance/es2017/useSharedArrayBuffer5.ts @@ -0,0 +1,6 @@ +// @target: es5 +// @lib: es6,es2017.sharedmemory + +var foge = new SharedArrayBuffer(1024); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; \ No newline at end of file diff --git a/tests/cases/conformance/es2017/useSharedArrayBuffer6.ts b/tests/cases/conformance/es2017/useSharedArrayBuffer6.ts new file mode 100644 index 00000000000..3606c1c6346 --- /dev/null +++ b/tests/cases/conformance/es2017/useSharedArrayBuffer6.ts @@ -0,0 +1,6 @@ +// @target: es5 +// @lib: es6,es2017.sharedmemory + +var foge = new SharedArrayBuffer(1024); +var species = foge[Symbol.species]; +var stringTag = foge[Symbol.toStringTag]; \ No newline at end of file diff --git a/tests/cases/unittests/commandLineParsing.ts b/tests/cases/unittests/commandLineParsing.ts index 9b43e666f57..8212ff03da4 100644 --- a/tests/cases/unittests/commandLineParsing.ts +++ b/tests/cases/unittests/commandLineParsing.ts @@ -60,7 +60,7 @@ namespace ts { assertParseResult(["--lib", "es5,invalidOption", "0.ts"], { errors: [{ - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", category: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.category, code: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.code, @@ -217,7 +217,7 @@ namespace ts { start: undefined, length: undefined, }, { - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", category: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.category, code: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.code, @@ -237,7 +237,7 @@ namespace ts { assertParseResult(["--lib", "es5,", "es7", "0.ts"], { errors: [{ - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", category: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.category, code: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.code, @@ -257,7 +257,7 @@ namespace ts { assertParseResult(["--lib", "es5, ", "es7", "0.ts"], { errors: [{ - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", category: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.category, code: ts.Diagnostics.Argument_for_0_option_must_be_Colon_1.code, diff --git a/tests/cases/unittests/convertCompilerOptionsFromJson.ts b/tests/cases/unittests/convertCompilerOptionsFromJson.ts index a686c7ec10a..b2d6c7d8fb6 100644 --- a/tests/cases/unittests/convertCompilerOptionsFromJson.ts +++ b/tests/cases/unittests/convertCompilerOptionsFromJson.ts @@ -233,7 +233,7 @@ namespace ts { file: undefined, start: 0, length: 0, - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", code: Diagnostics.Argument_for_0_option_must_be_Colon_1.code, category: Diagnostics.Argument_for_0_option_must_be_Colon_1.category }] @@ -264,7 +264,7 @@ namespace ts { file: undefined, start: 0, length: 0, - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", code: Diagnostics.Argument_for_0_option_must_be_Colon_1.code, category: Diagnostics.Argument_for_0_option_must_be_Colon_1.category }] @@ -295,7 +295,7 @@ namespace ts { file: undefined, start: 0, length: 0, - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", code: Diagnostics.Argument_for_0_option_must_be_Colon_1.code, category: Diagnostics.Argument_for_0_option_must_be_Colon_1.category }] @@ -326,7 +326,7 @@ namespace ts { file: undefined, start: 0, length: 0, - messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object'", + messageText: "Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'dom', 'webworker', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2017.object', 'es2017.sharedmemory'", code: Diagnostics.Argument_for_0_option_must_be_Colon_1.code, category: Diagnostics.Argument_for_0_option_must_be_Colon_1.category }]