Strict mode Failing
Expected no error, got ESHostError: No method available to detach an ArrayBuffer
non-Strict mode Failing
Expected no error, got ESHostError: No method available to detach an ArrayBuffer
Features:
- ∅
Expected no error, got ESHostError: No method available to detach an ArrayBuffer
Expected no error, got ESHostError: No method available to detach an ArrayBuffer
// Copyright (C) 2016 the V8 project authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- esid: sec-dataview.prototype.setuint8 description: > Detached buffer is checked after ToNumber(value) info: | 24.2.4.18 DataView.prototype.setUint8 ( byteOffset, value ) 1. Let v be the this value. 2. Return ? SetViewValue(v, byteOffset, true, "Uint8", value). 24.2.1.2 SetViewValue ( view, requestIndex, isLittleEndian, type, value ) ... 7. Let numberValue be ? ToNumber(value). ... 9. Let buffer be the value of view's [[ViewedArrayBuffer]] internal slot. 10. If IsDetachedBuffer(buffer) is true, throw a TypeError exception. ... includes: [detachArrayBuffer.js] ---*/ var buffer = new ArrayBuffer(8); var sample = new DataView(buffer, 0); var v = { valueOf: function() { throw new Test262Error(); } }; $DETACHBUFFER(buffer); assert.throws(Test262Error, function() { sample.setUint8(0, v); });