Herb, if you run “git log --grep MSVC” in a git checkout of WebKit, you’ll find many quirks we’ve done in our code to get it to compile with MSVC. Here are some of the most recent ones:
https://commits.webkit.org/272595@main https://commits.webkit.org/271031@main Some warning differences in https://commits.webkit.org/276799@main and https://commits.webkit.org/277563@main The COMPILER(MSVC) addition necessary in https://commits.webkit.org/265366@main puzzled me a lot for a while, but I stopped looking into it. And many more. I don’t have a strong opinion about WebKit’s use of MSVC, but WebKit is certainly a wealth of real-world code that has worked around compiler differences over the last few decades that could be analyzed by the MSVC team if you’re interested. > On May 2, 2024, at 3:49 PM, Olmstead, Don via webkit-dev > <webkit-dev@lists.webkit.org> wrote: > > Hey Herb, > > Not everyone whose embedding WebKit on Windows announces to us that they’re > using it so unsure if someone is still compiling using MSVC. All the > documentation we have points to clang-cl being the preferred way. The ones we > know of Bun, https://bun.sh/ , and Playwright, https://playwright.dev/ , have > switched to clang-cl. > > I was personally keeping the dream alive and would compile out WebKit with > MSVC. WebKit on Windows doesn’t have the highest tier JITs because we don’t > have anyone working on it for Windows and the maintenance costs around MSVC > are centered around that. If MSVC had the functionality that helps the JSC > folks make the VM run fast we wouldn’t be in this situation. If that > functionality is added to the roadmap then we’d definitely reconsider at that > time. > > Don > > From: Herb Sutter <herb.sut...@gmail.com> > Sent: Thursday, May 2, 2024 1:28 PM > To: Olmstead, Don <don.olmst...@sony.com>; 'Jean-Yves Avenard' > <jean-yves.aven...@apple.com> > Cc: 'WebKit-Dev Development' <webkit-dev@lists.webkit.org> > Subject: RE: [webkit-dev] Proposal: Dropping MSVC support and use clang-cl > exclusively on Windows > > Thank you, Jean-Yves and Don! > > One followup: I don’t know WebKit well but was surprised that it was being > built with MSVC, and Yusuke mentioned Windows projects that build with > clang-cl instead. Are there known users/products who are building with WebKit > that are important not to break, so that we (Microsoft) should be thinking > about doing work so you can keep using MSVC, or is this really an unused > configuration that it makes sense to just drop? > > Herb > > > From: Olmstead, Don <don.olmst...@sony.com <mailto:don.olmst...@sony.com>> > Sent: Thursday, May 2, 2024 12:06 PM > To: Jean-Yves Avenard <jean-yves.aven...@apple.com > <mailto:jean-yves.aven...@apple.com>>; Herb Sutter <herb.sut...@gmail.com > <mailto:herb.sut...@gmail.com>> > Cc: WebKit-Dev Development (webkit-dev@lists.webkit.org > <mailto:webkit-dev@lists.webkit.org>) <webkit-dev@lists.webkit.org > <mailto:webkit-dev@lists.webkit.org>> > Subject: RE: [webkit-dev] Proposal: Dropping MSVC support and use clang-cl > exclusively on Windows > > Hi Herb > > If you grep around the WebKit codebase for COMPILER(MSVC) there are a number > of workarounds hanging out. Some may have been fixed over time but the > workaround wasn’t removed. > > Biggest issue was around the JIT and some other low level features the JSC > folks utilize that isn’t present in MSVC. The lion’s share of JSC development > is done using Clang and those working on it don’t have a Windows box handy so > we have seen the JIT break on Windows. Yusuke I’m sure has a list of feature > requests that would improve the quality of MSVC for people developing VMs. > > MSVC has definitely caught some issues in the code and compiler mono-culture > isn’t great but realistically we don’t have the resources to keep MSVC up and > running. > > Regards, > Don > > From: Jean-Yves Avenard via webkit-dev <webkit-dev@lists.webkit.org > <mailto:webkit-dev@lists.webkit.org>> > Sent: Wednesday, May 1, 2024 5:10 PM > To: Herb Sutter <herb.sut...@gmail.com <mailto:herb.sut...@gmail.com>> > Cc: Webkit Development List <webkit-dev@lists.webkit.org > <mailto:webkit-dev@lists.webkit.org>> > Subject: Re: [webkit-dev] Proposal: Dropping MSVC support and use clang-cl > exclusively on Windows > > Hi > > > On 2 May 2024, at 10:07 am, Herb Sutter via webkit-dev > <webkit-dev@lists.webkit.org <mailto:webkit-dev@lists.webkit.org>> wrote: > > > We’ve had full C++20 including concepts for a couple of years so I wasn’t > sure what problem you were running into… are you encountering bugs in those > features? or you can’t turn on /std:c++20 for some reason? or are you using > an older pre-concepts (pre-VS2022 17.0) compiler? > > Thanks for any feedback you have time to share. > > Herb > > > We’ve had issues where some use of concepts made the latest MSVC compiler > crash > See https://searchfox.org/wubkat/source/Source/WTF/wtf/TypeTraits.h#145-172 > > See https://bugs.webkit.org/show_bug.cgi?id=261598 > > Jean-Yves > _______________________________________________ > webkit-dev mailing list > webkit-dev@lists.webkit.org > https://lists.webkit.org/mailman/listinfo/webkit-dev
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-dev