func-switch-dflt-eval-func-existing-var-no-init.js (783B)
1 // This file was procedurally generated from the following sources: 2 // - src/annex-b-fns/eval-func-existing-var-no-init.case 3 // - src/annex-b-fns/eval-func/direct-switch-dflt.template 4 /*--- 5 description: Existing variable binding is not modified (Funtion declaration in the `default` clause of a `switch` statement in eval code in the global scope) 6 esid: sec-web-compat-evaldeclarationinstantiation 7 flags: [generated, noStrict] 8 info: | 9 B.3.3.3 Changes to EvalDeclarationInstantiation 10 11 [...] 12 a. If declaredFunctionOrVarNames does not contain F, then 13 [...] 14 ---*/ 15 var init; 16 17 (function() { 18 eval( 19 'var f = 123;\ 20 init = f;switch (1) {' + 21 ' default:' + 22 ' function f() { }' + 23 '}\ 24 ' 25 ); 26 }()); 27 28 assert.sameValue(init, 123); 29 30 reportCompare(0, 0);