switch-case-global-init.js (1003B)
1 // This file was procedurally generated from the following sources: 2 // - src/annex-b-fns/global-init.case 3 // - src/annex-b-fns/global/switch-case.template 4 /*--- 5 description: Variable binding is initialized to `undefined` in outer scope (Function declaration in the `case` clause of a `switch` statement in the global scope) 6 esid: sec-web-compat-globaldeclarationinstantiation 7 flags: [generated, noStrict] 8 includes: [fnGlobalObject.js, propertyHelper.js] 9 info: | 10 B.3.3.2 Changes to GlobalDeclarationInstantiation 11 12 [...] 13 b. If declaredFunctionOrVarNames does not contain F, then 14 i. Perform ? envRec.CreateGlobalFunctionBinding(F, undefined, false). 15 ii. Append F to declaredFunctionOrVarNames. 16 [...] 17 18 ---*/ 19 var global = fnGlobalObject(); 20 assert.sameValue(f, undefined, 'binding is initialized to `undefined`'); 21 22 verifyProperty(global, "f", { 23 enumerable: true, 24 writable: true, 25 configurable: false 26 }); 27 28 switch (1) { 29 case 1: 30 function f() { } 31 } 32 33 reportCompare(0, 0);