[Win][Clang] SOFT_LINK reports warning: implicit conversion between pointer-to-function and pointer-to-object is a Microsoft extension [-Wmicrosoft-cast] clang-cl reports following warnings: > [5018/6237] Building CXX object Source\WebCore\CMakeFiles\WebCore.dir\rendering\RenderThemeWin.cpp.obj > ..\..\Source\WebCore\rendering\RenderThemeWin.cpp(151,1): warning: implicit conversion between pointer-to-function and pointer-to-object is a Microsoft extension [-Wmicrosoft-cast] > SOFT_LINK(uxtheme, OpenThemeData, HANDLE, WINAPI, (HWND hwnd, LPCWSTR pszClassList), (hwnd, pszClassList)) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > DerivedSources\ForwardingHeaders\wtf/win/SoftLinking.h(51,124): note: expanded from macro 'SOFT_LINK' > softLink##functionName = reinterpret_cast<resultType(callingConvention*)parameterDeclarations>(::EncodePointer(SOFT_LINK_GETPROCADDRESS(library##Library(), #functionName))); \ > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > DerivedSources\ForwardingHeaders\wtf/win/SoftLinking.h(39,34): note: expanded from macro 'SOFT_LINK_GETPROCADDRESS' > #define SOFT_LINK_GETPROCADDRESS GetProcAddress > ^ > ..\..\Source\WebCore\rendering\RenderThemeWin.cpp(151,1): warning: implicit conversion between pointer-to-function and pointer-to-object is a Microsoft extension [-Wmicrosoft-cast] > SOFT_LINK(uxtheme, OpenThemeData, HANDLE, WINAPI, (HWND hwnd, LPCWSTR pszClassList), (hwnd, pszClassList)) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > DerivedSources\ForwardingHeaders\wtf/win/SoftLinking.h(52,104): note: expanded from macro 'SOFT_LINK' > return reinterpret_cast<resultType (callingConvention*) parameterDeclarations>(::DecodePointer(softLink##functionName)) parameterNames; \ > ^~~~~~~~~~~~~~~~~~~~~~ > <scratch space>(239,1): note: expanded from here > softLinkOpenThemeData > ^~~~~~~~~~~~~~~~~~~~~ > ..\..\Source\WebKitLegacy\win\WebView.cpp(221,1): warning: implicit conversion between pointer-to-function and pointer-to-object is a Microsoft extension [-Wmicrosoft-cast] > SOFT_LINK_OPTIONAL(USER32, GetGestureInfo, BOOL, WINAPI, (HGESTUREINFO, PGESTUREINFO)); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > DerivedSources\ForwardingHeaders\wtf/win/SoftLinking.h(63,75): note: expanded from macro 'SOFT_LINK_OPTIONAL' > ptr = reinterpret_cast<functionName##PtrType>(::EncodePointer(SOFT_LINK_GETPROCADDRESS(library##Library(), #functionName))); \ > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > DerivedSources\ForwardingHeaders\wtf/win/SoftLinking.h(39,34): note: expanded from macro 'SOFT_LINK_GETPROCADDRESS' > #define SOFT_LINK_GETPROCADDRESS GetProcAddress > ^
It has introduced in Bug 163331 – [Win] Encode function pointers.
Created attachment 355621 [details] Patch
Comment on attachment 355621 [details] Patch Attachment 355621 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/10159992 New failing tests: media/no-fullscreen-when-hidden.html
Created attachment 355697 [details] Archive of layout-test-results from ews123 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews123 Port: ios-simulator-wk2 Platform: Mac OS X 10.13.6
Comment on attachment 355621 [details] Patch Clearing flags on attachment: 355621 Committed r238541: <https://trac.webkit.org/changeset/238541>
All reviewed patches have been landed. Closing bug.
<rdar://problem/46263596>