I'm filing this bug using WinLauncher which I compiled with VS2015RC. This first patch contains a bunch of strange things, the most puzzling of which was the change I needed to make to CSSPrimitiveValue.h in order to get this symbol when linking WebKit.dll: public: __cdecl WebCore::CSSPrimitiveValue::operator<class WTF::Ref<class WebCore::CSSPrimitiveValue> > class WTF::Ref<class WebCore::CSSPrimitiveValue>(void)const " (??$?BV?$Ref@VCSSPrimitiveValue@WebCore@@@WTF@@@CSSPrimitiveValue@WebCore@@QEBA?AV?$Ref@VCSSPrimitiveValue@WebCore@@@WTF@@XZ) I also had to change all the PlatformToolset values from v120 or v120_xp to v140, but I'm omitting that from this patch.
Created attachment 256085 [details] patch
I think this looks good, but we should have andersca and some of the JSC people look at the weird workarounds you needed to do.
Comment on attachment 256085 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=256085&action=review > Source/JavaScriptCore/heap/Heap.h:76 > +static void* const zombifiedBits = reinterpret_cast<void*>(static_cast<size_t>(0xdeadbeef)); I suggest uintptr_t instead of size_t. > Source/JavaScriptCore/runtime/ConsoleClient.cpp:256 > +// Yeah, I'm not sure why these are needed, but this shouldn't be put into WebKit. They're in JSCJSValueInlines.h, but the linker complains without them. I did a 64-bit build. Most likely the problem is some source file that is not including JSCJSValueInlines.h. That would result in this symptom. > Source/WTF/wtf/StdLibExtras.h:351 > +#if !defined(_MSC_VER) || _MSC_VER < 1900 Should use COMPILER(MSVC) rather than using _MSC_VER directly, like the rest of the code does.
Created attachment 257576 [details] Patch
Comment on attachment 257576 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=257576&action=review r=me > Source/WebCore/WebCore.vcxproj/build-generated-files.pl:89 > + $ccPath = @ccPaths[scalar(@ccPaths) - 1]; You can use $ccPath = $ccPaths[$#ccPaths].
http://trac.webkit.org/changeset/187702
The rest of this is going to be landed in https://bugs.webkit.org/show_bug.cgi?id=147526