// Copyright (C) 2026 Garham Lee. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- esid: sec-nativeerror description: > NativeError constructors throw TypeError when _message_ is a Symbol info: | _NativeError_ ( _message_ [ , _options_ ] ) 3. If _message_ is not *undefined*, then a. Let _msg_ be ? ToString(_message_). ToString (_argument_) 2. If _argument_ is a Symbol, throw a *TypeError* exception. features: [Symbol] ---*/ //Check #1 assert.throws(TypeError, function() { EvalError(Symbol()) }, "If _message_ is a Symbol, EvalError should throw a TypeError") //Check #2 assert.throws(TypeError, function() { RangeError(Symbol()) }, "If _message_ is a Symbol, RangeError should throw a TypeError") //Check #3 assert.throws(TypeError, function() { ReferenceError(Symbol()) }, "If _message_ is a Symbol, ReferenceError should throw a TypeError") //Check #4 assert.throws(TypeError, function() { SyntaxError(Symbol()) }, "If _message_ is a Symbol, SyntaxError should throw a TypeError") //Check #5 assert.throws(TypeError, function() { TypeError(Symbol()) }, "If _message_ is a Symbol, TypeError should throw a TypeError") //Check #6 assert.throws(TypeError, function() { URIError(Symbol()) }, "If _message_ is a Symbol, URIError should throw a TypeError") reportCompare(0, 0);