15.3.5.4_2-55gs.js (636B)
1 // Copyright (c) 2012 Ecma International. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 es5id: 15.3.5.4_2-55gs 6 description: > 7 Strict mode - checking access to strict function caller from 8 non-strict function (Injected setter includes strict directive 9 prologue) 10 flags: [noStrict] 11 ---*/ 12 13 var o = {}; 14 Object.defineProperty(o, "foo", { 15 set: function(stuff) { 16 "use strict"; 17 gNonStrict(); 18 } 19 }); 20 21 assert.throws(TypeError, function() { 22 o.foo = 10; 23 }); 24 25 function gNonStrict() { 26 return gNonStrict.caller || gNonStrict.caller.throwTypeError; 27 } 28 29 reportCompare(0, 0);