New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 672229 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug

Blocking:
issue 598772



Sign in to add a comment

CrWinClangLLD bot is failing with link errors

Project Member Reported by h...@chromium.org, Dec 7 2016

Issue description

The bot is red. I'll take a look.


The latest build: https://build.chromium.org/p/chromium.fyi/builders/CrWinClangLLD/builds/4830/steps/compile/logs/stdio

failed with a crash:


FAILED: blink_platform_unittests.exe blink_platform_unittests.exe.pdb 
cmd /c C:/b/depot_tools/python276_bin/python.exe ../../build/toolchain/win/tool_wrapper.py delete-file ./blink_platform_unittests.exe.pdb && C:/b/depot_tools/python276_bin/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x86 False ../../third_party/llvm-build/Release+Asserts/bin/lld-link.exe /nologo /OUT:./blink_platform_unittests.exe /PDB:./blink_platform_unittests.exe.pdb @./blink_platform_unittests.exe.rsp
Wrote crash dump file "C:\Users\CHROME~1\AppData\Local\Temp\lld-link.exe-fc01cf.dmp"
#0 0x000000014110bed4 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x160bed4)
#1 0x0000000140c9c683 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x119c683)
#2 0x0000000140c9c790 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x119c790)
#3 0x000000014110c3de (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x160c3de)
#4 0x000000014110c23a (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x160c23a)
#5 0x000000014110d166 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x160d166)
#6 0x000000014125ff90 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x175ff90)
#7 0x000000014125f4e1 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x175f4e1)
#8 0x00000001409991e2 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0xe991e2)
#9 0x000000013fb7d9b6 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x7d9b6)
#10 0x000000013fb7ca45 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x7ca45)
#11 0x000000013fb72b50 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x72b50)
#12 0x000000013fb72f6a (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x72f6a)
#13 0x000000013fb61fea (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x61fea)
#14 0x000000014132f259 (C:\b\c\b\CrWinClangLLD\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe+0x182f259)
#15 0x0000000076cf59cd (C:\Windows\system32\kernel32.dll+0x159cd)
#16 0x0000000076f2b891 (C:\Windows\SYSTEM32\ntdll.dll+0x2b891)


and the one before that failed with unresolved symbols:
https://build.chromium.org/p/chromium.fyi/builders/CrWinClangLLD/builds/4829/steps/compile/logs/stdio

[28804/44915] LINK(DLL) x64/gcp_portmon.dll x64/gcp_portmon.dll.lib x64/gcp_portmon.dll.pdb
FAILED: x64/gcp_portmon.dll x64/gcp_portmon.dll.lib x64/gcp_portmon.dll.pdb 
C:/b/depot_tools/python276_bin/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 False ../../third_party/llvm-build/Release+Asserts/bin/lld-link.exe /nologo /IMPLIB:x64/gcp_portmon.dll.lib /DLL /OUT:x64/gcp_portmon.dll /PDB:x64/gcp_portmon.dll.pdb @x64/gcp_portmon.dll.rsp
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ??0FilePath@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ??0FilePath@base@@QEAA@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ??1FilePath@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ??4FilePath@base@@QEAAAEAV01@AEBV01@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ?Append@FilePath@base@@QEBA?AV12@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@2@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ?PathExists@base@@YA_NAEBVFilePath@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ??0AtExitManager@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ??1AtExitManager@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ?GetCurrentProcessIntegrityLevel@base@@YA?AW4IntegrityLevel@1@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/port_monitor_dll/port_monitor_dll.obj: undefined symbol: ?GetVersion@win@base@@YA?AW4Version@12@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?ShouldCreateLogMessage@logging@@YA_NH@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0LogMessage@logging@@QEAA@PEBDHH@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1LogMessage@logging@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??6std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@PEB_W@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0FilePath@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0FilePath@base@@QEAA@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1FilePath@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??4FilePath@base@@QEAAAEAV01@AEBV01@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?DirName@FilePath@base@@QEBA?AV12@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?Append@FilePath@base@@QEBA?AV12@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@2@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?AppendASCII@FilePath@base@@QEBA?AV12@V?$BasicStringPiece@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?SaturatedSub@time_internal@base@@YA_JVTimeDelta@2@_J@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?Max@TimeDelta@base@@SA?AV12@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?Now@Time@base@@SA?AV12@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?GetProgramCounter@tracked_objects@@YAPEBXXZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?CloseHandle@HandleTraits@win@base@@SA_NPEAX@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?StartTracking@VerifierTraits@win@base@@SAXPEAXPEBX11@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?StopTracking@VerifierTraits@win@base@@SAXPEAXPEBX11@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?DeleteFileW@base@@YA_NAEBVFilePath@1@_N@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?PathExists@base@@YA_NAEBVFilePath@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?DirectoryExists@base@@YA_NAEBVFilePath@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?CreateTemporaryFileInDir@base@@YA_NAEBVFilePath@1@PEAV21@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?CreateDirectoryW@base@@YA_NAEBVFilePath@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?GetFileSize@base@@YA_NAEBVFilePath@1@PEA_J@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?OpenFile@base@@YAPEAU_iobuf@@AEBVFilePath@1@PEBD@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?CloseFile@base@@YA_NPEAU_iobuf@@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1Process@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0AtExitManager@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1AtExitManager@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0CommandLine@base@@QEAA@AEBVFilePath@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1CommandLine@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?FromString@CommandLine@base@@SA?AV12@AEBV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?AppendSwitchPath@CommandLine@base@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVFilePath@2@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?AppendSwitchNative@CommandLine@base@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@4@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?AppendArg@CommandLine@base@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1FileInfo@FileEnumerator@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?GetLastModifiedTime@FileInfo@FileEnumerator@base@@QEBA?AVTime@3@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0FileEnumerator@base@@QEAA@AEBVFilePath@1@_NH@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1FileEnumerator@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?Next@FileEnumerator@base@@QEAA?AVFilePath@2@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?GetInfo@FileEnumerator@base@@QEBA?AVFileInfo@12@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?Get@PathService@base@@SA_NHPEAVFilePath@2@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?DisableCache@PathService@base@@SAXXZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0LaunchOptions@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1LaunchOptions@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?LaunchProcess@base@@YA?AVProcess@1@AEBVCommandLine@1@AEBULaunchOptions@1@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?ReplaceFirstSubstringAfterOffset@base@@YAXPEAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@_KV?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@1@2@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??0RegKey@win@base@@QEAA@PEAUHKEY__@@PEB_WK@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ??1RegKey@win@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?ReadValue@RegKey@win@base@@QEBAJPEB_WPEAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z
x64/obj/cloud_print/virtual_driver/win/port_monitor/lib/port_monitor.obj: undefined symbol: ?GetVersion@win@base@@YA?AW4Version@12@XZ
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ?ShouldCreateLogMessage@logging@@YA_NH@Z
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ??0LogMessage@logging@@QEAA@PEBDHH@Z
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ??1LogMessage@logging@@QEAA@XZ
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ??0RegKey@win@base@@QEAA@XZ
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ??1RegKey@win@base@@QEAA@XZ
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ?Create@RegKey@win@base@@QEAAJPEAUHKEY__@@PEB_WK@Z
x64/obj/cloud_print/common/common/cloud_print_utils.obj: undefined symbol: ?WriteValue@RegKey@win@base@@QEAAJPEB_W0@Z
x64/obj/cloud_print/virtual_driver/win/win/virtual_driver_helpers.obj: undefined symbol: ??0FilePath@base@@QEAA@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@1@@Z
x64/obj/cloud_print/virtual_driver/win/win/virtual_driver_helpers.obj: undefined symbol: ??1FilePath@base@@QEAA@XZ
x64/obj/cloud_print/virtual_driver/win/win/virtual_driver_helpers.obj: undefined symbol: ??4FilePath@base@@QEAAAEAV01@AEBV01@@Z
x64/obj/cloud_print/virtual_driver/win/win/virtual_driver_helpers.obj: undefined symbol: ?Append@FilePath@base@@QEBA?AV12@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@2@@Z
x64/obj/base/allocator/unified_allocator_shim/allocator_shim.obj: undefined symbol: ?GetPageSize@base@@YA_KXZ
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??0FilePath@base@@QEAA@XZ
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??0FilePath@base@@QEAA@AEBV01@@Z
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??0FilePath@base@@QEAA@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@1@@Z
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??1FilePath@base@@QEAA@XZ
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??4FilePath@base@@QEAAAEAV01@AEBV01@@Z
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ?DirName@FilePath@base@@QEBA?AV12@XZ
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ?Append@FilePath@base@@QEBA?AV12@V?$BasicStringPiece@V?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@2@@Z
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ?PathExists@base@@YA_NAEBVFilePath@1@@Z
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??0RegKey@win@base@@QEAA@XZ
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ??1RegKey@win@base@@QEAA@XZ
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ?Open@RegKey@win@base@@QEAAJPEAUHKEY__@@PEB_WK@Z
x64/obj/chrome/installer/launcher_support/launcher_support/chrome_launcher_support.obj: undefined symbol: ?ReadValue@RegKey@win@base@@QEBAJPEB_WPEAV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z
constants.lib(chrome_switches.obj): undefined symbol: ?ForCurrentProcess@CommandLine@base@@SAPEAV12@XZ
constants.lib(chrome_switches.obj): undefined symbol: ?HasSwitch@CommandLine@base@@QEBA_NQEBD@Z
error: link failed
 

Comment 1 by h...@chromium.org, Dec 7 2016

Hrm, both of those targets link fine locally :-/ (Clang r288985 and Chromium #437067)
Same args.gn?

Comment 3 by h...@chromium.org, Dec 8 2016

Yup, only with an extra clang_base_path=.

Comment 4 by h...@chromium.org, Dec 8 2016

Status: WontFix (was: Assigned)
The next build went green: https://build.chromium.org/p/chromium.fyi/builders/CrWinClangLLD/builds/4832

Comment 5 by r...@chromium.org, Dec 13 2016

Status: Available (was: WontFix)
Went back red on the next non-purple build:
https://build.chromium.org/p/chromium.fyi/builders/CrWinClangLLD/builds/4835

Same target, gcp_portmon.dll

Comment 6 by r...@chromium.org, Dec 13 2016

I was surprised to discover that is_clang doesn't appear to be honored for x64 code:

$ ninja x64/obj/base/base/file_path.obj -v -d keeprsp
[1/1] ninja -t msvc -e environment.x64 -- "C:\src\depot_tools\win_toolchain\vs_files\d3cb0e37bdd120ad0ac4650b674b09e81be45616\VC\bin\amd64/cl.exe" /nologo /showIncludes /FC @x64/obj/base/base/file_path.obj.rsp /c ../../base/files/file_path.cc /Fox64/obj/base/base/file_path.obj /Fd"x64/obj/base/base_cc.pdb"

It runs cl.exe. That shouldn't cause LLD to fail, but it's interesting.

My gn args, modified slightly from the bot:

is_clang = true
is_component_build = false
is_debug = false
is_official_build = true
symbol_level = 1
target_cpu = "x86"
use_lld = true
clang_use_chrome_plugins = false
clang_base_path = "C:\src\llvm\build_x86"

Comment 7 by thakis@chromium.org, Dec 13 2016

What! is_clang should definitely affect x64 code. Oh, you mean in a 32-bit build it doesn't affect the 64 bit part of the 32-bit build? I can believe that, but that is definitely an oversight, not intentional.

Comment 8 by thakis@chromium.org, Dec 13 2016

2 of 3 in https://cs.chromium.org/search/?q=win:x64+file:%5C.gn&sq=package:chromium&type=cs get it right. cloud_print/BUILD.gn looks like it doesn't, and it depends on base, so we build base twice.

Comment 9 by thakis@chromium.org, Dec 13 2016

https://codereview.chromium.org/2541123003/ is probably what caused this, that (re-)added that target.
So two things to do:

1. Change cloud_print/BUILD.gn to use the clang_x64 toolchain instead of x64 if is_clang so we don't build base another time

2. Looks like we have some mangling incompatibilities, or other ABI incompatibilities, or, since this is lld only, maybe lld can't handle the case where several foo.libs with virtually but not quite identical contents appear?

Comment 11 by r...@chromium.org, Dec 13 2016

I think things go wrong for us because we run 'lld-link.exe /lib' on an LTCG-enabled MSVC object file. LLD produces an empty base.lib archive, because LLVM doesn't recognize object files produced with 'cl.exe /GL'. llvm-nm claims that they are invalid.

So, one action we should take is to make LLD error when producing archives from invalid object files.
Project Member

Comment 14 by bugdroid1@chromium.org, Dec 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b7e2bae9556c53e66d478774f70dc75c7cb9e687

commit b7e2bae9556c53e66d478774f70dc75c7cb9e687
Author: thakis <thakis@chromium.org>
Date: Wed Dec 14 18:44:07 2016

win/clang/x86: Use clang for 64-bit part of cloudprint.

BUG= 672229 

Review-Url: https://codereview.chromium.org/2571023003
Cr-Commit-Position: refs/heads/master@{#438550}

[modify] https://crrev.com/b7e2bae9556c53e66d478774f70dc75c7cb9e687/cloud_print/BUILD.gn

Owner: thakis@chromium.org
Status: Fixed (was: Available)
Will hopefully cycle green now (and build a few hundred fewer TUs). And someone will hopefully fix the llvm bug linked in comment 13 so it'll be less mysterious next time.
Blocking: 598772

Sign in to add a comment