From 192628510fc2494e8843ccc4d797d7b1a168f1d5 Mon Sep 17 00:00:00 2001 From: Tingan Ho Date: Wed, 2 Aug 2017 12:05:10 +0200 Subject: [PATCH] Fixes CR comments --- src/compiler/transformers/es2015.ts | 2 +- src/compiler/transformers/esnext.ts | 6 +++++- .../reference/emitter.ignoredCatchParameter.esnext.js | 11 ----------- .../emitter.ignoredCatchParameter.esnext.symbols | 7 ------- .../emitter.ignoredCatchParameter.esnext.types | 7 ------- .../noCatchBinding/emitter.noCatchBinding.esnext.ts | 8 ++++++++ .../statements/tryStatements/tryStatements.ts | 9 ++++++++- 7 files changed, 22 insertions(+), 28 deletions(-) delete mode 100644 tests/baselines/reference/emitter.ignoredCatchParameter.esnext.js delete mode 100644 tests/baselines/reference/emitter.ignoredCatchParameter.esnext.symbols delete mode 100644 tests/baselines/reference/emitter.ignoredCatchParameter.esnext.types create mode 100644 tests/cases/conformance/emitter/esnext/noCatchBinding/emitter.noCatchBinding.esnext.ts diff --git a/src/compiler/transformers/es2015.ts b/src/compiler/transformers/es2015.ts index 41e68baa523..51733524699 100644 --- a/src/compiler/transformers/es2015.ts +++ b/src/compiler/transformers/es2015.ts @@ -2491,7 +2491,7 @@ namespace ts { const catchVariable = getGeneratedNameForNode(errorRecord); const returnMethod = createTempVariable(/*recordTempVariable*/ undefined); const values = createValuesHelper(context, expression, node.expression); - const next = createCall(createPropertyAccess(iterator, "next" ), /*typeArguments*/ undefined, []); + const next = createCall(createPropertyAccess(iterator, "next"), /*typeArguments*/ undefined, []); hoistVariableDeclaration(errorRecord); hoistVariableDeclaration(returnMethod); diff --git a/src/compiler/transformers/esnext.ts b/src/compiler/transformers/esnext.ts index 11e79ae9eeb..8d71016b051 100644 --- a/src/compiler/transformers/esnext.ts +++ b/src/compiler/transformers/esnext.ts @@ -216,7 +216,11 @@ namespace ts { function visitCatchClause(node: CatchClause): CatchClause { if (!node.variableDeclaration) { - return updateCatchClause(node, createVariableDeclaration(createTempVariable(/*recordTempVariable*/ undefined)), node.block); + return updateCatchClause( + node, + createVariableDeclaration(createTempVariable(/*recordTempVariable*/ undefined)), + visitNode(node.block, visitor, isBlock) + ); } return visitEachChild(node, visitor, context); } diff --git a/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.js b/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.js deleted file mode 100644 index 0f9254fd3cb..00000000000 --- a/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.js +++ /dev/null @@ -1,11 +0,0 @@ -//// [emitter.ignoredCatchParameter.esnext.ts] -function fn() { - try {} catch {} -} - - -//// [emitter.ignoredCatchParameter.esnext.js] -function fn() { - try { } - catch { } -} diff --git a/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.symbols b/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.symbols deleted file mode 100644 index 78838a33011..00000000000 --- a/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.symbols +++ /dev/null @@ -1,7 +0,0 @@ -=== tests/cases/conformance/emitter/esnext/noCatchParameter/emitter.ignoredCatchParameter.esnext.ts === -function fn() { ->fn : Symbol(fn, Decl(emitter.ignoredCatchParameter.esnext.ts, 0, 0)) - - try {} catch {} -} - diff --git a/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.types b/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.types deleted file mode 100644 index 06bf4ab2682..00000000000 --- a/tests/baselines/reference/emitter.ignoredCatchParameter.esnext.types +++ /dev/null @@ -1,7 +0,0 @@ -=== tests/cases/conformance/emitter/esnext/noCatchParameter/emitter.ignoredCatchParameter.esnext.ts === -function fn() { ->fn : () => void - - try {} catch {} -} - diff --git a/tests/cases/conformance/emitter/esnext/noCatchBinding/emitter.noCatchBinding.esnext.ts b/tests/cases/conformance/emitter/esnext/noCatchBinding/emitter.noCatchBinding.esnext.ts new file mode 100644 index 00000000000..8e87b3c8c8f --- /dev/null +++ b/tests/cases/conformance/emitter/esnext/noCatchBinding/emitter.noCatchBinding.esnext.ts @@ -0,0 +1,8 @@ +// @target: esnext +function f() { + try { } catch { } + try { } catch { + try { } catch { } + } + try { } catch { } finally { } +} \ No newline at end of file diff --git a/tests/cases/conformance/statements/tryStatements/tryStatements.ts b/tests/cases/conformance/statements/tryStatements/tryStatements.ts index 3fb395ca0ea..0a47ba7a94b 100644 --- a/tests/cases/conformance/statements/tryStatements/tryStatements.ts +++ b/tests/cases/conformance/statements/tryStatements/tryStatements.ts @@ -2,11 +2,18 @@ function fn() { try { } catch { } + try { } catch { + try { } catch { + try { } catch { } + } + try { } catch { } + } + try { } catch (x) { var x: any; } try { } finally { } try { } catch { } finally { } - try { } catch(z) { } finally { } + try { } catch (z) { } finally { } } \ No newline at end of file