Bug 168500

Summary: [ES6]. Implement Annex B.3.3 function hoisting rules for eval. Do not create space for variable in var scope until binding
Product: WebKit Reporter: GSkachkov <gskachkov>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: saam
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 163208    
Bug Blocks:    

Description GSkachkov 2017-02-17 01:20:54 PST
'''
function foo() {
    {
         let boo = 10;
         eval(' { function boo() {} } ');
         print(boo); // 10
    }
    print(boo); //should be Reference Error, but now it prints 'undefined'
}
foo();
'''
Comment 1 GSkachkov 2017-07-11 14:44:41 PDT
Fixed in 163208