* #7349 - Add "use strict" directive to transformed class bodies * Update tests (#7349) * Add test for program with use strict directive (#7349) * Update tests (#7349) * Update source mapping (#7349) * Add test for parent blockStatement with use strict directive (#7349) * Update tests (#7349) * Update tests (#7349) * Update tests (#7349) * Add test for constructor-only class (#7349) * Constructor only classes are strict, too But constructor only that use non-simple parameters must use a strict function wrapper. * Fix test * Wrapper not needed if class is already strict * Revert change to lerna.json
23 lines
370 B
JavaScript
23 lines
370 B
JavaScript
function test(x) {
|
|
var _x = x;
|
|
|
|
var F = function F() {
|
|
"use strict";
|
|
|
|
babelHelpers.classCallCheck(this, F);
|
|
Object.defineProperty(this, _x, {
|
|
configurable: true,
|
|
enumerable: true,
|
|
writable: true,
|
|
value: 1
|
|
});
|
|
};
|
|
|
|
x = 'deadbeef';
|
|
expect(new F().foo).toBe(1);
|
|
x = 'wrong';
|
|
expect(new F().foo).toBe(1);
|
|
}
|
|
|
|
test('foo');
|