{ var foo = function() { try { return 1; } catch(err) { return 2; } finally { return 3; } } }
{ var foo = function() { try { return 1 } catch(err) { return 2 } finally { if(true) { return 3 } else { return 2 } } } }
{ var foo = function() { try { return 1 } catch(err) { return 2 } finally { return 3 } } }
{ var foo = function() { try { return 1 } catch(err) { return 2 } finally { return function(x) { return y } } } }
{ var foo = function() { try { return 1 } catch(err) { return 2 } finally { return { x: function(c) { return c } } } } }
{ var foo = function() { try { return 1 } catch(err) { return 2 } finally { throw new Error() } } }
{ var foo = function() { try { foo(); } finally { try { bar(); } finally { return; } } }; }
{ var foo = function() { label: try { return 0; } finally { break label; } return 1; } }
{ var foo = function() { a: try { return 1; } catch(err) { return 2; } finally { break a; } } }
{ var foo = function() { while (true) try {} finally { break; } } }
{ var foo = function() { while (true) try {} finally { continue; } } }
{ var foo = function() { switch (true) { case true: try {} finally { break; } } } }
{ var foo = function() { a: while (true) try {} finally { switch (true) { case true: break a; } } } }
{ var foo = function() { a: while (true) try {} finally { switch (true) { case true: continue; } } } }
{ var foo = function() { a: switch (true) { case true: try {} finally { switch (true) { case true: break a; } } } } }