Bug 203483 - [Windows][Clang] error LNK2001: unresolved external symbol "void * __cdecl JSC::allocateCell<class JSC::JSGenericTypedArrayView<struct JSC::Float32Adaptor> >(class JSC::Heap &,unsigned __int64)"
Summary: [Windows][Clang] error LNK2001: unresolved external symbol "void * __cdecl JS...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-10-28 03:12 PDT by Fujii Hironori
Modified: 2019-10-28 03:33 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2019-10-28 03:12:53 PDT
[Windows][Clang] error LNK2001: unresolved external symbol "void * __cdecl JSC::allocateCell<class JSC::JSGenericTypedArrayView<struct JSC::Float32Adaptor> >(class JSC::Heap &,unsigned __int64)"

clang-cl can't build WinCairo since r251584 (Bug 203391).

[4648/5085] Linking CXX shared library bin64\WebKit.dll
FAILED: bin64/WebKit.dll lib64/WebKit.lib 
cmd.exe /C "cd . && "C:\Program Files\CMake\bin\cmake.exe" -E vs_link_dll --intdir=Source\WebKitLegacy\CMakeFiles\WebKitLegacy.dir --rc=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests  -- C:\PROGRA~2\MIB055~1\2019\PROFES~1\VC\Tools\MSVC\1423~1.281\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\WebKitLegacy.rsp  /out:bin64\WebKit.dll /implib:lib64\WebKit.lib /pdb:bin64\WebKit.pdb /dll /version:0.0 /machine:x64 /DEBUG /OPT:ICF /OPT:REF /INCREMENTAL:NO /SUBSYSTEM:WINDOWS  /INCREMENTAL:NO   && cmd.exe /C "cd /D C:\webkit\gb\WebKitBuild\Release\Source\WebKitLegacy && C:\Perl64\bin\perl.exe C:/webkit/gb/WebKitLibraries/win/tools/scripts/version-stamp.pl C:/webkit/gb/WebKitBuild/Release/WebKitLegacy/DerivedSources C:/webkit/gb/WebKitBuild/Release/bin64/WebKit.dll""
LINK: command "C:\PROGRA~2\MIB055~1\2019\PROFES~1\VC\Tools\MSVC\1423~1.281\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\WebKitLegacy.rsp /out:bin64\WebKit.dll /implib:lib64\WebKit.lib /pdb:bin64\WebKit.pdb /dll /version:0.0 /machine:x64 /DEBUG /OPT:ICF /OPT:REF /INCREMENTAL:NO /SUBSYSTEM:WINDOWS /INCREMENTAL:NO /MANIFEST /MANIFESTFILE:bin64\WebKit.dll.manifest" failed (exit code 1120) with the following output:
   Creating library lib64\WebKit.lib and object lib64\WebKit.exp
WebCore.lib(UnifiedSource-2f84417a-10.cpp.obj) : error LNK2019: unresolved external symbol "void * __cdecl JSC::allocateCell<class JSC::JSGenericTypedArrayView<struct JSC::Float32Adaptor> >(class JSC::Heap &,unsigned __int64)" (??$allocateCell@V?$JSGenericTypedArrayView@UFloat32Adaptor@JSC@@@JSC@@@JSC@@YAPEAXAEAVHeap@0@_K@Z) referenced in function "public: static class JSC::JSGenericTypedArrayView<struct JSC::Float32Adaptor> * __cdecl JSC::JSGenericTypedArrayView<struct JSC::Float32Adaptor>::create(class JSC::VM &,class JSC::Structure *,class WTF::RefPtr<class JSC::GenericTypedArrayView<struct JSC::Float32Adaptor>,struct WTF::DumbPtrTraits<class JSC::GenericTypedArrayView<struct JSC::Float32Adaptor> > > &&)" (?create@?$JSGenericTypedArrayView@UFloat32Adaptor@JSC@@@JSC@@SAPEAV12@AEAVVM@2@PEAVStructure@2@$$QEAV?$RefPtr@V?$GenericTypedArrayView@UFloat32Adaptor@JSC@@@JSC@@U?$DumbPtrTraits@V?$GenericTypedArrayView@UFloat32Adaptor@JSC@@@JSC@@@WTF@@@WTF@@@Z)
WebCore.lib(UnifiedSource-4babe430-44.cpp.obj) : error LNK2001: unresolved external symbol "void * __cdecl JSC::allocateCell<class JSC::JSGenericTypedArrayView<struct JSC::Float32Adaptor> >(class JSC::Heap &,unsigned __int64)" (??$allocateCell@V?$JSGenericTypedArrayView@UFloat32Adaptor@JSC@@@JSC@@@JSC@@YAPEAXAEAVHeap@0@_K@Z)
WebCore.lib(UnifiedSource-2f84417a-10.cpp.obj) : error LNK2019: unresolved external symbol "void * __cdecl JSC::allocateCell<class JSC::JSGenericTypedArrayView<struct JSC::Float64Adaptor> >(class JSC::Heap &,unsigned __int64)" (??$allocateCell@V?$JSGenericTypedArrayView@UFloat64Adaptor@JSC@@@JSC@@@JSC@@YAPEAXAEAVHeap@0@_K@Z) referenced in function "public: static class JSC::JSGenericTypedArrayView<struct JSC::Float64Adaptor> * __cdecl JSC::JSGenericTypedArrayView<struct JSC::Float64Adaptor>::create(class JSC::VM &,class JSC::Structure *,class WTF::RefPtr<class JSC::GenericTypedArrayView<struct JSC::Float64Adaptor>,struct WTF::DumbPtrTraits<class JSC::GenericTypedArrayView<struct JSC::Float64Adaptor> > > &&)" (?create@?$JSGenericTypedArrayView@UFloat64Adaptor@JSC@@@JSC@@SAPEAV12@AEAVVM@2@PEAVStructure@2@$$QEAV?$RefPtr@V?$GenericTypedArrayView@UFloat64Adaptor@JSC@@@JSC@@U?$DumbPtrTraits@V?$GenericTypedArrayView@UFloat64Adaptor@JSC@@@JSC@@@WTF@@@WTF@@@Z)
bin64\WebKit.dll : fatal error LNK1120: 2 unresolved externals
Comment 1 Fujii Hironori 2019-10-28 03:13:44 PDT
Here is the content of UnifiedSource-2f84417a-10.cpp

#include "css/CSSValuePool.cpp"
#include "css/CSSVariableData.cpp"
#include "css/CSSVariableReferenceValue.cpp"
#include "css/DOMCSSNamespace.cpp"
#include "css/DOMCSSPaintWorklet.cpp"
#include "css/DOMCSSRegisterCustomProperty.cpp"
#include "css/DOMMatrix.cpp"
#include "css/DOMMatrixReadOnly.cpp"
Comment 2 Fujii Hironori 2019-10-28 03:14:16 PDT
This is a similar issue with Bug 193481.

Bug 193481 – Add 'inline' specifier for declarations for its definitions are defined in separate headers (…Inlines.h)
Comment 3 Fujii Hironori 2019-10-28 03:17:03 PDT
runtime/JSGenericTypedArrayViewInlines.h is using allocateCell without including JSCellInlines.h.
Comment 4 Fujii Hironori 2019-10-28 03:32:23 PDT
Committed r251652: <https://trac.webkit.org/changeset/251652>
Comment 5 Radar WebKit Bug Importer 2019-10-28 03:33:13 PDT
<rdar://problem/56665319>