blob: b69314ced4d7178fe8ec3f921cbab598fdde5a2a [file] [log] [blame]
// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
function f0(a = eval("var b"), b) { }
assertThrows(f0, SyntaxError);
function f1(a = eval("var b = 0"), b) { }
assertThrows(f1, SyntaxError);
function f2(a = eval("function b(){}"), b) { }
assertThrows(f2, SyntaxError);
function f3(a = eval("{ function b(){} }"), b) { return b }
assertEquals(undefined, f3());
function f4(b, a = eval("var b = 0")) { return b }
assertThrows(f4, SyntaxError);
function f5(b, a = eval("function b(){}")) { return b }
assertThrows(f5, SyntaxError);
function f6(b, a = eval("{ function b(){} }")) { return b }
assertEquals(42, f6(42));