Try/catch/finally extravaganza #3

return in finally sections is a bad idea:

  function foo()
  {
    try 
    {
       try { return 1/0; }  catch(e) { return 2; } finally { return 3; }
    }
    catch(e) { return 4; } finally { return 5; }
  }

Probably return allowance in finally sections is a design flaw of JavaScript language itself?