optimize try-catch-finally (#1731)

- eliminate empty blocks
- flatten out if try-block does not throw
This commit is contained in:
Alex Lam S.L
2017-03-30 12:16:58 +08:00
committed by GitHub
parent 0f910ee25c
commit 7bea38a05d
5 changed files with 81 additions and 12 deletions

View File

@@ -853,7 +853,9 @@ issue_1715_1: {
var a = 1;
function f() {
a++;
try {} catch (a) {
try {
x();
} catch (a) {
var a;
}
}
@@ -864,7 +866,9 @@ issue_1715_1: {
var a = 1;
function f() {
a++;
try {} catch (a) {
try {
x();
} catch (a) {
var a;
}
}
@@ -882,7 +886,9 @@ issue_1715_2: {
var a = 1;
function f() {
a++;
try {} catch (a) {
try {
x();
} catch (a) {
var a = 2;
}
}
@@ -893,7 +899,9 @@ issue_1715_2: {
var a = 1;
function f() {
a++;
try {} catch (a) {
try {
x();
} catch (a) {
var a;
}
}
@@ -911,7 +919,9 @@ issue_1715_3: {
var a = 1;
function f() {
a++;
try {} catch (a) {
try {
console;
} catch (a) {
var a = 2 + x();
}
}
@@ -922,7 +932,9 @@ issue_1715_3: {
var a = 1;
function f() {
a++;
try {} catch (a) {
try {
console;
} catch (a) {
var a = x();
}
}
@@ -940,7 +952,9 @@ issue_1715_4: {
var a = 1;
!function a() {
a++;
try {} catch (a) {
try {
x();
} catch (a) {
var a;
}
}();
@@ -950,7 +964,9 @@ issue_1715_4: {
var a = 1;
!function() {
a++;
try {} catch (a) {
try {
x();
} catch (a) {
var a;
}
}();