Throw a TypeError when reassigning a const (#12252)
This commit is contained in:
parent
b4ae7b7893
commit
a967910b8b
@ -871,7 +871,7 @@ helpers.taggedTemplateLiteralLoose = helper("7.0.0-beta.0")`
|
||||
|
||||
helpers.readOnlyError = helper("7.0.0-beta.0")`
|
||||
export default function _readOnlyError(name) {
|
||||
throw new Error("\\"" + name + "\\" is read-only");
|
||||
throw new TypeError("\\"" + name + "\\" is read-only");
|
||||
}
|
||||
`;
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
(function () {
|
||||
var a = "foo";
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
var a = 1,
|
||||
b = 2;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
for (var i = 0; i < 3; i = (_readOnlyError("i"), i + 1)) {
|
||||
console.log(i);
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
var c = 17;
|
||||
var a = 0;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
var MULTIPLIER = 5;
|
||||
MULTIPLIER = (_readOnlyError("MULTIPLIER"), "overwrite");
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
var MULTIPLIER = 5;
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
var a = "str";
|
||||
_readOnlyError("a"), --a;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
function _readOnlyError(name) { throw new Error("\"" + name + "\" is read-only"); }
|
||||
function _readOnlyError(name) { throw new TypeError("\"" + name + "\" is read-only"); }
|
||||
|
||||
var foo = 1;
|
||||
_readOnlyError("foo"), foo++;
|
||||
|
||||
2
packages/babel-plugin-transform-block-scoping/test/fixtures/exec/constant-violation.js
vendored
Normal file
2
packages/babel-plugin-transform-block-scoping/test/fixtures/exec/constant-violation.js
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
const a = 1;
|
||||
expect(() => { a = 2 }).toThrow(TypeError);
|
||||
Loading…
x
Reference in New Issue
Block a user