Commit ac03ef02 authored by ishell's avatar ishell Committed by Commit bot

Also check new_target_is_base() bit when comparing two maps for equivalence.

BUG=chromium:580506
LOG=N

Review URL: https://codereview.chromium.org/1631673002

Cr-Commit-Position: refs/heads/master@{#33497}
parent 03d59ca7
......@@ -12250,6 +12250,7 @@ bool CheckEquivalent(Map* first, Map* second) {
first->bit_field() == second->bit_field() &&
first->is_extensible() == second->is_extensible() &&
first->is_strong() == second->is_strong() &&
first->new_target_is_base() == second->new_target_is_base() &&
first->is_hidden_prototype() == second->is_hidden_prototype();
}
......
......@@ -1034,6 +1034,7 @@
'regress/regress-crbug-572590': [SKIP],
'regress/regress-crbug-573857': [SKIP],
'regress/regress-crbug-575080': [SKIP],
'regress/regress-crbug-580506': [SKIP],
'regress/regress-deopt-gcb': [SKIP],
'regress/regress-deopt-gc': [SKIP],
'regress/regress-deopt-in-array-literal-spread': [SKIP],
......
// Copyright 2016 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
(function() {
'use strict';
class A extends Function {
constructor(...args) {
super(...args);
this.a = 42;
}
}
var v1 = new A("'use strict';");
function f(func) {
func.__defineSetter__('a', function() { });
}
var v2 = new A();
f(v2);
f(v1);
})();
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment