Bug 39658

Summary: Build fix for JSFunction
Product: WebKit Reporter: Kwang Yul Seo <skyul>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: beergun, commit-queue, joybro201
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch none

Description Kwang Yul Seo 2010-05-25 01:27:55 PDT
MSVC can't compile one of JSFunction constructors when JIT is disabled. "PassRefPtr<NativeExecutable>" causes the compile error as NativeExecutable is not defined. 

c:\cygwin\home\kseo\webkitbrew\javascriptcore\wtf\passrefptr.h(66) : error C2027: use of undefined type 'JSC::NativeExecutable'
        c:\cygwin\home\kseo\webkitbrew\javascriptcore\runtime\jsfunction.h(36) : see declaration of 'JSC::NativeExecutable'
        c:\cygwin\home\kseo\webkitbrew\javascriptcore\wtf\passrefptr.h(80) : see reference to function template instantiation 'void WTF::derefIfNotNull<T>(T *)' being compiled
        with
        [
            T=JSC::NativeExecutable
        ]
        c:\cygwin\home\kseo\webkitbrew\javascriptcore\wtf\passrefptr.h(80) : while compiling class template member function 'WTF::PassRefPtr<T>::~PassRefPtr(void)'
        with
        [
            T=JSC::NativeExecutable
        ]
        c:\cygwin\home\kseo\webkitbrew\javascriptcore\runtime\jsfunction.cpp(66) : see reference to class template instantiation 'WTF::PassRefPtr<T>' being compiled
        with
        [
            T=JSC::NativeExecutable
        ]
c:\cygwin\home\kseo\webkitbrew\javascriptcore\wtf\passrefptr.h(66) : error C2227: left of '->deref' must point to class/struct/union/generic type

Add ENABLE(JIT) guard to the constructor.
Comment 1 Kwang Yul Seo 2010-05-25 01:32:12 PDT
Created attachment 56987 [details]
Patch
Comment 2 WebKit Commit Bot 2010-05-25 09:52:09 PDT
Comment on attachment 56987 [details]
Patch

Clearing flags on attachment: 56987

Committed r60170: <http://trac.webkit.org/changeset/60170>
Comment 3 WebKit Commit Bot 2010-05-25 09:52:14 PDT
All reviewed patches have been landed.  Closing bug.