clang win release component bots broken |
||
Issue descriptionwith pinned too; e.g. on https://build.chromium.org/p/chromium.fyi/builders/CrWinClang%28shared%29/builds/15389 (that's the first red) FAILED: blink_web.dll blink_web.dll.lib blink_web.dll.pdb C:/b/depot_tools/python276_bin/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x86 False link.exe /nologo /IMPLIB:./blink_web.dll.lib /DLL /OUT:./blink_web.dll /PDB:./blink_web.dll.pdb @./blink_web.dll.rsp LINK : ./blink_web.dll not found or not built by the last incremental link; performing full link ExternalPopupMenu.obj : error LNK2019: unresolved external symbol "public: void __thiscall blink::WebCoalescedInputEvent::WebInputEventDeleter::operator()(class blink::WebInputEvent *)const " (??RWebInputEventDeleter@WebCoalescedInputEvent@blink@@QBEXPAVWebInputEvent@2@@Z) referenced in function "private: void __thiscall blink::ExternalPopupMenu::dispatchEvent(class blink::TimerBase *)" (?dispatchEvent@ExternalPopupMenu@blink@@AAEXPAVTimerBase@2@@Z) WebViewImpl.obj : error LNK2001: unresolved external symbol "public: void __thiscall blink::WebCoalescedInputEvent::WebInputEventDeleter::operator()(class blink::WebInputEvent *)const " (??RWebInputEventDeleter@WebCoalescedInputEvent@blink@@QBEXPAVWebInputEvent@2@@Z) Probably caused by https://codereview.chromium.org/2683043004 but we thought we had squashed all the cases where clang-cl behaves differently than cl.exe -- apparently not, or it's broken in release component builds there too and we just don't have bots for that elsewhere.
,
Feb 13 2017
i.e. maybe we need something like http://llvm.org/viewvc/llvm-project?view=revision&revision=281395 for operator calls?
,
Feb 13 2017
https://codereview.chromium.org/2694053003/ works around it for now
,
Feb 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/63ab88124b5ecfd54cd839c4a7a098d0734b1d50 commit 63ab88124b5ecfd54cd839c4a7a098d0734b1d50 Author: thakis <thakis@chromium.org> Date: Mon Feb 13 23:23:32 2017 win: Unbreak clang component build after https://codereview.chromium.org/2683043004 BUG= 691714 Review-Url: https://codereview.chromium.org/2694053003 Cr-Commit-Position: refs/heads/master@{#450148} [modify] https://crrev.com/63ab88124b5ecfd54cd839c4a7a098d0734b1d50/third_party/WebKit/public/platform/WebCoalescedInputEvent.h
,
Feb 14 2017
Turns out it's not about the operator calls, but about references to destructors not explicitly showing up in the AST. Richard had an idea for how to do this, though.
,
Feb 15 2017
There's something else going on, besides the destructor thing I mentioned above (which is a bug, but might not be the cause here).
WebCoalescedInputEvent is dllimport, but it has a std::unique_ptr<WebInputEvent,WebInputEventDeleter> member, which is not a dllimport class, so WebCoalescedInputEvents destructor should not be emitted available_externally.
However, it seems something is happening because of the using declaration,
using WebScopedInputEvent =
std::unique_ptr<WebInputEvent, WebInputEventDeleter>;
I suspect because that's in the dllimported class dllimport rubs off on, WebScopedInputEvent and we do emit WebCoalescedInputEvent's destructor available_externally, and that's the first step towards how we end up referencing that operator() in ExternalPopupMenu::dispatchEvent.
I'll need to look at this some more tomorrow.
,
Feb 15 2017
Re #6, the problem seems less mysterious today: we were simply failing to look through typedefs and such. Verifying my fix now.
,
Feb 15 2017
,
Nov 21
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2d9c589fda01fe33a8f9a499565c7fd9ca06d539 commit 2d9c589fda01fe33a8f9a499565c7fd9ca06d539 Author: Charlie Andrews <charliea@chromium.org> Date: Tue Nov 20 23:58:48 2018 Remove TODO about removing BLINK_PLATFORM_EXPORT on WebInputEventDeleter BLINK_PLATFORM_EXPORT can't be safely removed without causing a linker error on Windows and this fact isn't going away. Bug: 691714 Change-Id: Ie2399c50877e16fa80f9cb3ebe455c56493e6cce Reviewed-on: https://chromium-review.googlesource.com/c/1343291 Commit-Queue: Charlie Andrews <charliea@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Hans Wennborg <hans@chromium.org> Cr-Commit-Position: refs/heads/master@{#609857} [modify] https://crrev.com/2d9c589fda01fe33a8f9a499565c7fd9ca06d539/third_party/blink/public/platform/web_coalesced_input_event.h |
||
►
Sign in to add a comment |
||
Comment 1 by thakis@chromium.org
, Feb 13 2017