nodejs/deps/v8/test/mjsunit/shared-memory/regress-crbug-1487973.js

30 lines
772 B
JavaScript
Raw Permalink Normal View History

// Copyright 2023 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: --expose-externalize-string --shared-string-table
// Flags: --allow-natives-syntax
function CheckExternal() {
let o = {};
const key = "25964";
externalizeString(key);
o[key] = 'foo';
assertTrue(Reflect.has(o, key));
}
CheckExternal();
function CheckInternalizedExternal() {
let o = {};
const key = createExternalizableString("259" + "63");
const shared_key = %ShareObject(key);
externalizeString(shared_key);
%InternalizeString("25963");
%InternalizeString(shared_key);
o[shared_key] = 'foo';
assertTrue(Reflect.has(o, shared_key));
}
CheckInternalizedExternal();