bug1268955-usestrict-semantics.js (465B)
1 var scope = {}; 2 scope.mod = eval(`"use strict"; (function() { "use asm"; function f() {} return f; });`); 3 4 scope.fun = scope.mod(); 5 6 var caught = false; 7 for (let callee of ['mod', 'fun']) { 8 for (let getter of ['caller', 'arguments']) { 9 caught = false; 10 try { 11 scope[callee][getter]; 12 } catch (e) { 13 caught = true; 14 assertEq(e instanceof TypeError, true); 15 } 16 assertEq(caught, true); 17 } 18 }