diff --git a/internal/parser/parser.go b/internal/parser/parser.go index 60e0b3efb9..f9d6d814df 100644 --- a/internal/parser/parser.go +++ b/internal/parser/parser.go @@ -4324,6 +4324,7 @@ func (p *Parser) parseArrowFunctionExpressionBody(isAsync bool, allowReturnTypeI } saveContextFlags := p.contextFlags p.setContextFlags(ast.NodeFlagsAwaitContext, isAsync) + p.setContextFlags(ast.NodeFlagsYieldContext, false) node := p.parseAssignmentExpressionOrHigherWorker(allowReturnTypeInArrowFunction) p.contextFlags = saveContextFlags return node diff --git a/testdata/baselines/reference/submodule/conformance/YieldExpression20_es6.errors.txt b/testdata/baselines/reference/submodule/conformance/YieldExpression20_es6.errors.txt new file mode 100644 index 0000000000..4352abf778 --- /dev/null +++ b/testdata/baselines/reference/submodule/conformance/YieldExpression20_es6.errors.txt @@ -0,0 +1,12 @@ +YieldExpression20_es6.ts(3,8): error TS1163: A 'yield' expression is only allowed in a generator body. + + +==== YieldExpression20_es6.ts (1 errors) ==== + function* test() { + return () => ({ + b: yield 2, // error + ~~~~~ +!!! error TS1163: A 'yield' expression is only allowed in a generator body. + }); + } + \ No newline at end of file diff --git a/testdata/baselines/reference/submodule/conformance/YieldExpression20_es6.errors.txt.diff b/testdata/baselines/reference/submodule/conformance/YieldExpression20_es6.errors.txt.diff deleted file mode 100644 index ff9d3f5d74..0000000000 --- a/testdata/baselines/reference/submodule/conformance/YieldExpression20_es6.errors.txt.diff +++ /dev/null @@ -1,16 +0,0 @@ ---- old.YieldExpression20_es6.errors.txt -+++ new.YieldExpression20_es6.errors.txt -@@= skipped -0, +0 lines =@@ --YieldExpression20_es6.ts(3,8): error TS1163: A 'yield' expression is only allowed in a generator body. -- -- --==== YieldExpression20_es6.ts (1 errors) ==== -- function* test() { -- return () => ({ -- b: yield 2, // error -- ~~~~~ --!!! error TS1163: A 'yield' expression is only allowed in a generator body. -- }); -- } -- -+ \ No newline at end of file