func-switch-dflt-eval-func-existing-block-fn-no-init.js (833B)
1 // This file was procedurally generated from the following sources: 2 // - src/annex-b-fns/eval-func-existing-block-fn-no-init.case 3 // - src/annex-b-fns/eval-func/direct-switch-dflt.template 4 /*--- 5 description: Does not re-initialize binding created by similar forms (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 'init = f;\ 20 \ 21 {\ 22 function f() {}\ 23 }switch (1) {' + 24 ' default:' + 25 ' function f() { }' + 26 '}\ 27 ' 28 ); 29 }()); 30 31 assert.sameValue(init, undefined); 32 33 reportCompare(0, 0);