blob: 716edc690bb312ea27543a5027cd2e5bf1dd4f7d [file] [log] [blame]
// Copyright (C) 2020 Alexey Shvayka. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-regexp.prototype.tostring
description: >
`this` value is resolved using strict mode semantics,
throwing TypeError if called as top-level function.
info: |
RegExp.prototype.toString ( )
1. Let R be the this value.
2. If Type(R) is not Object, throw a TypeError exception.
ToObject ( argument )
Argument Type: Undefined
Result: Throw a TypeError exception.
---*/
["source", "flags"].forEach(function(key) {
Object.defineProperty(this, key, {
get: function() {
throw new Test262Error(key + " lookup should not be performed");
},
});
}, this);
var toString = RegExp.prototype.toString;
assert.throws(TypeError, function() {
toString();
});