// Copyright (c) 2012 Ecma International. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- es5id: 12.14-2 es6id: B.3.5 description: > catch doesn't change declaration scope - var initializer in catch with same name as catch parameter changes parameter ---*/ function capturedFoo() {return foo}; foo = "prior to throw"; try { throw new Error(); } catch (foo) { var foo = "initializer in catch"; } assert.sameValue(capturedFoo(), "prior to throw");