// Copyright 2017 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 store(obj, name) { | |
return obj[name] = 0; | |
} | |
function f(obj) { | |
var key = { | |
toString() { throw new Error("boom"); } | |
}; | |
store(obj, key); | |
} | |
(function() { | |
var proxy = new Proxy({}, {}); | |
store(proxy, 0) | |
assertThrows(() => f(proxy), Error); | |
})(); |