diff --git a/.github/workflows/copilot-setup-steps.yml b/.github/workflows/copilot-setup-steps.yml new file mode 100644 index 0000000000..f67a01892e --- /dev/null +++ b/.github/workflows/copilot-setup-steps.yml @@ -0,0 +1,29 @@ +name: 'Copilot Setup Steps' + +on: workflow_dispatch + +jobs: + # The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot. + copilot-setup-steps: + runs-on: ubuntu-latest + + # Set the permissions to the lowest permissions possible needed for your steps. + # Copilot will be given its own token for its operations. + permissions: + # If you want to clone the repository as part of your setup steps, for example to install dependencies, you'll need the `contents: read` permission. If you don't clone the repository in your setup steps, Copilot will do this for you automatically after the steps complete. + contents: read + + # You can define any steps you want, and they will run before the agent starts. + # If you do not check out your code, Copilot will do this for you. + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + submodules: true + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 + - uses: dtolnay/rust-toolchain@fcf085fcb4b4b8f63f96906cd713eb52181b5ea4 # stable + - uses: ./.github/actions/setup-go + with: + cache-name: copilot-setup-steps + - run: npm install -g @playwright/mcp@0.0.28 + - run: npm ci + - run: npx hereby build diff --git a/internal/checker/checker.go b/internal/checker/checker.go index cdbff642a0..2b2a4b4d09 100644 --- a/internal/checker/checker.go +++ b/internal/checker/checker.go @@ -481,7 +481,7 @@ const ( IterationUseAsyncYieldStar = IterationUseAllowsSyncIterablesFlag | IterationUseAllowsAsyncIterablesFlag | IterationUseYieldStarFlag IterationUseGeneratorReturnType = IterationUseAllowsSyncIterablesFlag IterationUseAsyncGeneratorReturnType = IterationUseAllowsAsyncIterablesFlag - IterationUseCacheFlags = IterationUseAllowsSyncIterablesFlag | IterationUseAllowsAsyncIterablesFlag | IterationUseForOfFlag | IterationUseReportError + IterationUseCacheFlags = IterationUseAllowsSyncIterablesFlag | IterationUseAllowsAsyncIterablesFlag | IterationUseForOfFlag | IterationUseYieldStarFlag | IterationUseSpreadFlag | IterationUseDestructuringFlag | IterationUseReportError ) type IterationTypes struct { @@ -5905,7 +5905,10 @@ func (c *Checker) getIterationTypesOfIterable(t *Type, use IterationUse, errorNo return cached } result := c.getIterationTypesOfIterableWorker(t, use, errorNode) - c.iterationTypesCache[key] = result + // Don't cache empty results when error reporting is requested, to ensure errors are reported for each call site + if result.hasTypes() || errorNode == nil { + c.iterationTypesCache[key] = result + } return result } @@ -6065,10 +6068,18 @@ func (c *Checker) getIterationTypesOfIterableSlow(t *Type, r *IterationTypesReso if IsTypeAny(methodType) { return IterationTypes{c.anyType, c.anyType, c.anyType} } - if signatures := c.getSignaturesOfType(methodType, SignatureKindCall); len(signatures) != 0 { - iteratorType := c.getIntersectionType(core.Map(signatures, c.getReturnTypeOfSignature)) - return c.getIterationTypesOfIteratorWorker(iteratorType, r, errorNode, diagnosticOutput) + allSignatures := c.getSignaturesOfType(methodType, SignatureKindCall) + validSignatures := core.Filter(allSignatures, func(sig *Signature) bool { + return c.getMinArgumentCount(sig) == 0 + }) + if len(validSignatures) == 0 { + if errorNode != nil && len(allSignatures) > 0 { + c.checkTypeAssignableToEx(t, r.getGlobalIterableType(), errorNode, nil /*headMessage*/, diagnosticOutput) + } + return IterationTypes{} } + iteratorType := c.getIntersectionType(core.Map(validSignatures, c.getReturnTypeOfSignature)) + return c.getIterationTypesOfIteratorWorker(iteratorType, r, errorNode, diagnosticOutput) } return IterationTypes{} } diff --git a/testdata/baselines/reference/submodule/compiler/asyncIteratorExtraParameters.errors.txt b/testdata/baselines/reference/submodule/compiler/asyncIteratorExtraParameters.errors.txt new file mode 100644 index 0000000000..9a2965d54a --- /dev/null +++ b/testdata/baselines/reference/submodule/compiler/asyncIteratorExtraParameters.errors.txt @@ -0,0 +1,32 @@ +asyncIteratorExtraParameters.ts(11,27): error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. +asyncIteratorExtraParameters.ts(13,12): error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. + + +==== asyncIteratorExtraParameters.ts (2 errors) ==== + // https://github.com/microsoft/TypeScript/issues/57130 + const iter = { + async *[Symbol.asyncIterator](_: number) { + yield 0; + } + }; + + declare function g(...args: any): any; + + async function* f() { + for await (const _ of iter); + ~~~~ +!!! error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. +!!! related TS2322 asyncIteratorExtraParameters.ts:11:27: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' is not assignable to type 'AsyncIterable'. + Types of property '[Symbol.asyncIterator]' are incompatible. + Type '(_: number) => AsyncGenerator' is not assignable to type '() => AsyncIterator'. + Target signature provides too few arguments. Expected 1 or more, but got 0. + + yield* iter; + ~~~~ +!!! error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. +!!! related TS2322 asyncIteratorExtraParameters.ts:13:12: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' is not assignable to type 'AsyncIterable'. + Types of property '[Symbol.asyncIterator]' are incompatible. + Type '(_: number) => AsyncGenerator' is not assignable to type '() => AsyncIterator'. + Target signature provides too few arguments. Expected 1 or more, but got 0. + } + \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/compiler/asyncIteratorExtraParameters.errors.txt.diff b/testdata/baselines/reference/submodule/compiler/asyncIteratorExtraParameters.errors.txt.diff deleted file mode 100644 index 1ab0c61dd2..0000000000 --- a/testdata/baselines/reference/submodule/compiler/asyncIteratorExtraParameters.errors.txt.diff +++ /dev/null @@ -1,36 +0,0 @@ ---- old.asyncIteratorExtraParameters.errors.txt -+++ new.asyncIteratorExtraParameters.errors.txt -@@= skipped -0, +0 lines =@@ --asyncIteratorExtraParameters.ts(11,27): error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. --asyncIteratorExtraParameters.ts(13,12): error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. -- -- --==== asyncIteratorExtraParameters.ts (2 errors) ==== -- // https://github.com/microsoft/TypeScript/issues/57130 -- const iter = { -- async *[Symbol.asyncIterator](_: number) { -- yield 0; -- } -- }; -- -- declare function g(...args: any): any; -- -- async function* f() { -- for await (const _ of iter); -- ~~~~ --!!! error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. --!!! related TS2322 asyncIteratorExtraParameters.ts:11:27: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' is not assignable to type 'AsyncIterable'. -- Types of property '[Symbol.asyncIterator]' are incompatible. -- Type '(_: number) => AsyncGenerator' is not assignable to type '() => AsyncIterator'. -- Target signature provides too few arguments. Expected 1 or more, but got 0. -- -- yield* iter; -- ~~~~ --!!! error TS2504: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. --!!! related TS2322 asyncIteratorExtraParameters.ts:13:12: Type '{ [Symbol.asyncIterator](_: number): AsyncGenerator; }' is not assignable to type 'AsyncIterable'. -- Types of property '[Symbol.asyncIterator]' are incompatible. -- Type '(_: number) => AsyncGenerator' is not assignable to type '() => AsyncIterator'. -- Target signature provides too few arguments. Expected 1 or more, but got 0. -- } -- -+ \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/compiler/iteratorExtraParameters.errors.txt b/testdata/baselines/reference/submodule/compiler/iteratorExtraParameters.errors.txt new file mode 100644 index 0000000000..fec3eb9882 --- /dev/null +++ b/testdata/baselines/reference/submodule/compiler/iteratorExtraParameters.errors.txt @@ -0,0 +1,50 @@ +iteratorExtraParameters.ts(11,21): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +iteratorExtraParameters.ts(13,12): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +iteratorExtraParameters.ts(15,9): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +iteratorExtraParameters.ts(17,10): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. + + +==== iteratorExtraParameters.ts (4 errors) ==== + // https://github.com/microsoft/TypeScript/issues/57130 + const iter = { + *[Symbol.iterator](_: number) { + yield 0; + } + }; + + declare function g(...args: any): any; + + function* f() { + for (const _ of iter); + ~~~~ +!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +!!! related TS2322 iteratorExtraParameters.ts:11:21: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. + Types of property '[Symbol.iterator]' are incompatible. + Type '(_: number) => Generator' is not assignable to type '() => Iterator'. + Target signature provides too few arguments. Expected 1 or more, but got 0. + + yield* iter; + ~~~~ +!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +!!! related TS2322 iteratorExtraParameters.ts:13:12: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. + Types of property '[Symbol.iterator]' are incompatible. + Type '(_: number) => Generator' is not assignable to type '() => Iterator'. + Target signature provides too few arguments. Expected 1 or more, but got 0. + + [...iter] + ~~~~ +!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +!!! related TS2322 iteratorExtraParameters.ts:15:9: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. + Types of property '[Symbol.iterator]' are incompatible. + Type '(_: number) => Generator' is not assignable to type '() => Iterator'. + Target signature provides too few arguments. Expected 1 or more, but got 0. + + g(...iter); + ~~~~ +!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. +!!! related TS2322 iteratorExtraParameters.ts:17:10: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. + Types of property '[Symbol.iterator]' are incompatible. + Type '(_: number) => Generator' is not assignable to type '() => Iterator'. + Target signature provides too few arguments. Expected 1 or more, but got 0. + } + \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/compiler/iteratorExtraParameters.errors.txt.diff b/testdata/baselines/reference/submodule/compiler/iteratorExtraParameters.errors.txt.diff deleted file mode 100644 index 82c537fc2e..0000000000 --- a/testdata/baselines/reference/submodule/compiler/iteratorExtraParameters.errors.txt.diff +++ /dev/null @@ -1,54 +0,0 @@ ---- old.iteratorExtraParameters.errors.txt -+++ new.iteratorExtraParameters.errors.txt -@@= skipped -0, +0 lines =@@ --iteratorExtraParameters.ts(11,21): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --iteratorExtraParameters.ts(13,12): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --iteratorExtraParameters.ts(15,9): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --iteratorExtraParameters.ts(17,10): error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. -- -- --==== iteratorExtraParameters.ts (4 errors) ==== -- // https://github.com/microsoft/TypeScript/issues/57130 -- const iter = { -- *[Symbol.iterator](_: number) { -- yield 0; -- } -- }; -- -- declare function g(...args: any): any; -- -- function* f() { -- for (const _ of iter); -- ~~~~ --!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --!!! related TS2322 iteratorExtraParameters.ts:11:21: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. -- Types of property '[Symbol.iterator]' are incompatible. -- Type '(_: number) => Generator' is not assignable to type '() => Iterator'. -- Target signature provides too few arguments. Expected 1 or more, but got 0. -- -- yield* iter; -- ~~~~ --!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --!!! related TS2322 iteratorExtraParameters.ts:13:12: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. -- Types of property '[Symbol.iterator]' are incompatible. -- Type '(_: number) => Generator' is not assignable to type '() => Iterator'. -- Target signature provides too few arguments. Expected 1 or more, but got 0. -- -- [...iter] -- ~~~~ --!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --!!! related TS2322 iteratorExtraParameters.ts:15:9: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. -- Types of property '[Symbol.iterator]' are incompatible. -- Type '(_: number) => Generator' is not assignable to type '() => Iterator'. -- Target signature provides too few arguments. Expected 1 or more, but got 0. -- -- g(...iter); -- ~~~~ --!!! error TS2488: Type '{ [Symbol.iterator](_: number): Generator; }' must have a '[Symbol.iterator]()' method that returns an iterator. --!!! related TS2322 iteratorExtraParameters.ts:17:10: Type '{ [Symbol.iterator](_: number): Generator; }' is not assignable to type 'Iterable'. -- Types of property '[Symbol.iterator]' are incompatible. -- Type '(_: number) => Generator' is not assignable to type '() => Iterator'. -- Target signature provides too few arguments. Expected 1 or more, but got 0. -- } -- -+ \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt b/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt index 1bab467dde..257dcb21ae 100644 --- a/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt +++ b/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt @@ -1,9 +1,10 @@ omittedExpressionForOfLoop.ts(1,19): error TS2304: Cannot find name 'doesNotExist'. omittedExpressionForOfLoop.ts(4,19): error TS18050: The value 'undefined' cannot be used here. omittedExpressionForOfLoop.ts(7,12): error TS2488: Type 'never' must have a '[Symbol.iterator]()' method that returns an iterator. +omittedExpressionForOfLoop.ts(10,12): error TS2488: Type 'never' must have a '[Symbol.iterator]()' method that returns an iterator. -==== omittedExpressionForOfLoop.ts (3 errors) ==== +==== omittedExpressionForOfLoop.ts (4 errors) ==== for (const [,] of doesNotExist) { ~~~~~~~~~~~~ !!! error TS2304: Cannot find name 'doesNotExist'. @@ -20,4 +21,6 @@ omittedExpressionForOfLoop.ts(7,12): error TS2488: Type 'never' must have a '[Sy } for (const [] of []) { + ~~ +!!! error TS2488: Type 'never' must have a '[Symbol.iterator]()' method that returns an iterator. } \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt.diff b/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt.diff deleted file mode 100644 index e2e84af17f..0000000000 --- a/testdata/baselines/reference/submodule/compiler/omittedExpressionForOfLoop.errors.txt.diff +++ /dev/null @@ -1,23 +0,0 @@ ---- old.omittedExpressionForOfLoop.errors.txt -+++ new.omittedExpressionForOfLoop.errors.txt -@@= skipped -0, +0 lines =@@ - omittedExpressionForOfLoop.ts(1,19): error TS2304: Cannot find name 'doesNotExist'. - omittedExpressionForOfLoop.ts(4,19): error TS18050: The value 'undefined' cannot be used here. - omittedExpressionForOfLoop.ts(7,12): error TS2488: Type 'never' must have a '[Symbol.iterator]()' method that returns an iterator. --omittedExpressionForOfLoop.ts(10,12): error TS2488: Type 'never' must have a '[Symbol.iterator]()' method that returns an iterator. -- -- --==== omittedExpressionForOfLoop.ts (4 errors) ==== -+ -+ -+==== omittedExpressionForOfLoop.ts (3 errors) ==== - for (const [,] of doesNotExist) { - ~~~~~~~~~~~~ - !!! error TS2304: Cannot find name 'doesNotExist'. -@@= skipped -20, +19 lines =@@ - } - - for (const [] of []) { -- ~~ --!!! error TS2488: Type 'never' must have a '[Symbol.iterator]()' method that returns an iterator. - } \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt b/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt index 2e7a31eef3..0af867a2c6 100644 --- a/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt +++ b/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt @@ -1,7 +1,8 @@ for-of16.ts(8,11): error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. +for-of16.ts(10,11): error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. -==== for-of16.ts (1 errors) ==== +==== for-of16.ts (2 errors) ==== class MyStringIterator { [Symbol.iterator]() { return this; @@ -14,4 +15,7 @@ for-of16.ts(8,11): error TS2488: Type 'MyStringIterator' must have a '[Symbol.it !!! error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. !!! related TS2489 for-of16.ts:8:11: An iterator must have a 'next()' method. - for (v of new MyStringIterator) { } // Should still fail (related errors should still be shown even though type is cached). \ No newline at end of file + for (v of new MyStringIterator) { } // Should still fail (related errors should still be shown even though type is cached). + ~~~~~~~~~~~~~~~~~~~~ +!!! error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. +!!! related TS2489 for-of16.ts:10:11: An iterator must have a 'next()' method. \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt.diff b/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt.diff deleted file mode 100644 index 0e4bfaa922..0000000000 --- a/testdata/baselines/reference/submodule/conformance/for-of16.errors.txt.diff +++ /dev/null @@ -1,21 +0,0 @@ ---- old.for-of16.errors.txt -+++ new.for-of16.errors.txt -@@= skipped -0, +0 lines =@@ - for-of16.ts(8,11): error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. --for-of16.ts(10,11): error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. -- -- --==== for-of16.ts (2 errors) ==== -+ -+ -+==== for-of16.ts (1 errors) ==== - class MyStringIterator { - [Symbol.iterator]() { - return this; -@@= skipped -15, +14 lines =@@ - !!! related TS2489 for-of16.ts:8:11: An iterator must have a 'next()' method. - - for (v of new MyStringIterator) { } // Should still fail (related errors should still be shown even though type is cached). -- ~~~~~~~~~~~~~~~~~~~~ --!!! error TS2488: Type 'MyStringIterator' must have a '[Symbol.iterator]()' method that returns an iterator. --!!! related TS2489 for-of16.ts:10:11: An iterator must have a 'next()' method. \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt b/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt index df9005679a..b0635928d4 100644 --- a/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt +++ b/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt @@ -3,9 +3,10 @@ types.forAwait.es2018.2.ts(8,21): error TS2504: Type '{}' must have a '[Symbol.a types.forAwait.es2018.2.ts(10,16): error TS2322: Type 'number' is not assignable to type 'string'. types.forAwait.es2018.2.ts(12,16): error TS2322: Type 'number' is not assignable to type 'string'. types.forAwait.es2018.2.ts(14,21): error TS2488: Type 'AsyncIterable' must have a '[Symbol.iterator]()' method that returns an iterator. +types.forAwait.es2018.2.ts(16,15): error TS2488: Type 'AsyncIterable' must have a '[Symbol.iterator]()' method that returns an iterator. -==== types.forAwait.es2018.2.ts (5 errors) ==== +==== types.forAwait.es2018.2.ts (6 errors) ==== declare const asyncIterable: AsyncIterable; declare const iterable: Iterable; async function f() { @@ -33,6 +34,9 @@ types.forAwait.es2018.2.ts(14,21): error TS2488: Type 'AsyncIterable' mu !!! related TS2773 types.forAwait.es2018.2.ts:14:21: Did you forget to use 'await'? } for (y of asyncIterable) { + ~~~~~~~~~~~~~ +!!! error TS2488: Type 'AsyncIterable' must have a '[Symbol.iterator]()' method that returns an iterator. +!!! related TS2773 types.forAwait.es2018.2.ts:16:15: Did you forget to use 'await'? } } \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt.diff b/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt.diff deleted file mode 100644 index 19233fc836..0000000000 --- a/testdata/baselines/reference/submodule/conformance/types.forAwait.es2018.2.errors.txt.diff +++ /dev/null @@ -1,26 +0,0 @@ ---- old.types.forAwait.es2018.2.errors.txt -+++ new.types.forAwait.es2018.2.errors.txt -@@= skipped -2, +2 lines =@@ - types.forAwait.es2018.2.ts(10,16): error TS2322: Type 'number' is not assignable to type 'string'. - types.forAwait.es2018.2.ts(12,16): error TS2322: Type 'number' is not assignable to type 'string'. - types.forAwait.es2018.2.ts(14,21): error TS2488: Type 'AsyncIterable' must have a '[Symbol.iterator]()' method that returns an iterator. --types.forAwait.es2018.2.ts(16,15): error TS2488: Type 'AsyncIterable' must have a '[Symbol.iterator]()' method that returns an iterator. -- -- --==== types.forAwait.es2018.2.ts (6 errors) ==== -+ -+ -+==== types.forAwait.es2018.2.ts (5 errors) ==== - declare const asyncIterable: AsyncIterable; - declare const iterable: Iterable; - async function f() { -@@= skipped -31, +30 lines =@@ - !!! related TS2773 types.forAwait.es2018.2.ts:14:21: Did you forget to use 'await'? - } - for (y of asyncIterable) { -- ~~~~~~~~~~~~~ --!!! error TS2488: Type 'AsyncIterable' must have a '[Symbol.iterator]()' method that returns an iterator. --!!! related TS2773 types.forAwait.es2018.2.ts:16:15: Did you forget to use 'await'? - } - } - \ No newline at end of file