v8/test/mjsunit/regress/regress-1231901.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

39 lines
783 B
JavaScript
Raw Normal View History

// Copyright 2021 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.
//
// Flags: --allow-natives-syntax --interrupt-budget=100
function __f_9() {}
function __f_10() {}
function f(a, b) {
if (b) {
new __f_10().__proto__ = a;
} else {
__f_10.prototype = a;
}
}
function g(a, b, c) {
var d = a ? new __f_9() : {};
if (b) { g(d); }
f(d, c);
}
g(false, true, false);
g(false, false, false);
g(false, false, false, undefined);
g(false, true, true);
g(false, false, true);
g(false, false, true, undefined);
g(true, true, false);
g(true, false, false);
g(true, false, false, undefined);
g(true, true, true);
g(true, false, true);
g(true, false, true, undefined);