Bug 188635 - [Win] Visual Studio 2017 version 15.8 can't compile WebKit
Summary: [Win] Visual Studio 2017 version 15.8 can't compile WebKit
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Template Framework (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-08-15 21:23 PDT by Fujii Hironori
Modified: 2018-09-25 21:57 PDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2018-08-15 21:23:21 PDT
I upgraded VS today. It can't build ToT WebKit.

  Microsoft Visual Studio Professional 2017 
  Version 15.8.0
  VisualStudio.15.Release/15.8.0+28010.0
  Microsoft .NET Framework
  Version 4.7.02556

> 2>------ Build started: Project: WTF (WTF\WTF), Configuration: Debug x64 ------
> 2>TextBreakIterator.obj : error LNK2005: "public: static void (__cdecl*const * const WTF::__visitor_table<struct WTF::Visitor<class <lambda_4688178ac87a3efd1e417c3ce7f3aa28> >,class WTF::TextBreakIteratorICU,class WTF::NullTextBreakIterator>::__trampoline)(struct WTF::Visitor<class <lambda_4688178ac87a3efd1e417c3ce7f3aa28> > &,class WTF::Variant<class WTF::TextBreakIteratorICU,class WTF::NullTextBreakIterator> &)" (?__trampoline@?$__visitor_table@U?$Visitor@V<lambda_4688178ac87a3efd1e417c3ce7f3aa28>@@$$V@WTF@@VTextBreakIteratorICU@2@VNullTextBreakIterator@2@@WTF@@2QBQ6AXAEAU?$Visitor@V<lambda_4688178ac87a3efd1e417c3ce7f3aa28>@@$$V@2@AEAV?$Variant@VTextBreakIteratorICU@WTF@@VNullTextBreakIterator@2@@2@@ZB) already defined in StringView.obj
> 2>   Creating library C:/webkit/wa/WebKitBuild/Debug/lib64/WTF.lib and object C:/webkit/wa/WebKitBuild/Debug/lib64/WTF.exp
> 2>C:\webkit\wa\WebKitBuild\Debug\bin64\WTF.dll : fatal error LNK1169: one or more multiply defined symbols found
> 2>Done building project "WTF.vcxproj" -- FAILED.
> ========== Build: 1 succeeded, 1 failed, 1 up-to-date, 0 skipped ==========
Comment 1 Fujii Hironori 2018-08-15 21:26:34 PDT
another build log: https://gist.github.com/fujii/d8208ba24a38caa14f6f1b9198867d91
Comment 4 Mark Salisbury 2018-08-20 18:21:23 PDT
We are seeing this too.  Thanks for working with Microsoft to get this fixed so fast!
Comment 5 Mark Salisbury 2018-08-20 18:23:15 PDT
(In reply to Fujii Hironori from comment #3)
> https://twitter.com/stephantlavavej/status/1030543709295636480?s=21

Wow!  They're going to build WebKit before releasing Visual C++ compiler updates?
Comment 6 Fujii Hironori 2018-09-04 17:48:41 PDT
According to Don, this issue will be fixed in 15.8.3.
Comment 7 Fujii Hironori 2018-09-11 17:36:53 PDT
I confirmed version 15.8.3 also reports the same error. Is it a problem in WebKit side?
Comment 8 Fujii Hironori 2018-09-25 21:01:04 PDT
https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes#-visual-studio-2017-version-1584

> Top Issues Fixed in 15.8.4
> These are the customer-reported issues addressed in 15.8.4:
> 
> (..)
> [WebKit] "Already defined symbol" for static template member definition (regression).
Comment 9 Fujii Hironori 2018-09-25 21:57:09 PDT
This issue has been fixed, but another issue comes here. Filed:

Bug 189987 – [Win] error C2139: 'WebKit::UpdateInfo': an undefined class is not allowed as an argument to compiler intrinsic type trait '__is_assignable'