Bug 155657

Summary: JSDOMGlobalObject.h needs to #include StructureInlines.h
Product: WebKit Reporter: Mark Lam <mark.lam>
Component: JavaScriptCoreAssignee: Mark Lam <mark.lam>
Status: RESOLVED FIXED    
Severity: Normal    
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=191626
Attachments:
Description Flags
proposed patch. fpizlo: review+

Description Mark Lam 2016-03-18 12:15:41 PDT
The Win EWS is complaining about the following:

WebCore.lib(EmptyClients.obj) : error LNK2019: unresolved external symbol "public: static class JSC::Structure * __cdecl JSC::Structure::create(class JSC::VM &,class JSC::JSGlobalObject *,class JSC::JSValue,class JSC::TypeInfo const &,struct JSC::ClassInfo const *,unsigned char,unsigned int)" (?create@Structure@JSC@@SAPAV12@AAVVM@2@PAVJSGlobalObject@2@VJSValue@2@ABVTypeInfo@2@PBUClassInfo@2@EI@Z) referenced in function "public: static class JSC::Structure * __cdecl WebCore::JSDOMGlobalObject::createStructure(class JSC::VM &,class JSC::JSValue)" (?createStructure@JSDOMGlobalObject@WebCore@@SAPAVStructure@JSC@@AAVVM@4@VJSValue@4@@Z) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Source\WebKit\WebKit.vcxproj]
C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\bin32\WebKit.dll : fatal error LNK1120: 1 unresolved externals 

Structure::create() is implemented in StructureInlines.h.  Just need to #include the header file.
Comment 1 Mark Lam 2016-03-18 12:18:32 PDT
Created attachment 274444 [details]
proposed patch.
Comment 2 Mark Lam 2016-03-18 12:18:53 PDT
Let's try it on the EWS first.
Comment 3 Filip Pizlo 2016-03-18 12:52:17 PDT
Comment on attachment 274444 [details]
proposed patch.

View in context: https://bugs.webkit.org/attachment.cgi?id=274444&action=review

> Source/WebCore/bindings/js/JSDOMGlobalObject.h:33
> +#include <runtime/StructureInlines.h>

Any reason not to include JSCInlines.h?
Comment 4 Mark Lam 2016-03-18 12:54:16 PDT
(In reply to comment #3)
> Comment on attachment 274444 [details]
> proposed patch.
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=274444&action=review
> 
> > Source/WebCore/bindings/js/JSDOMGlobalObject.h:33
> > +#include <runtime/StructureInlines.h>
> 
> Any reason not to include JSCInlines.h?

I was only targeting the specific issue that was reported by the EWS.  JSCInlines.h should work but is overkill for now.
Comment 5 Mark Lam 2016-03-18 12:59:14 PDT
Thanks.  Landed in r198440: <http://trac.webkit.org/r198440>.