mirror of
https://github.com/ziglang/zig.git
synced 2024-11-27 23:52:31 +00:00
c4f53d1ef6
The steps to repro this issue are: zig build-obj hello.zig -target x86_64-windows-msvc zig build-exe hello.obj -target x86_64-windows-msvc --subsystem console -lkernel32 -lntdll What was happening is that the main Compilation added a work item to produce kernel32.lib. Then it added a sub-Compilation to build zig's libc, which ended up calling a function with extern "kernel32", which caused the sub-Compilation to also try to produce kernel32.lib. The main Compilation and sub-Compilation do not coordinate about the set of import libraries that they will be trying to build, so this caused a deadlock. This commit solves the problem by disabling the extern "foo" feature from working when building compiler_rt or libc. Zig's linker code is now responsible for putting the appropriate import libs on the linker line, if any for compiler_rt and libc. Related: #5825 |
||
---|---|---|
.. | ||
brace_expansion | ||
cat | ||
empty_env | ||
global_linkage | ||
guess_number | ||
hello_world | ||
issue_339 | ||
issue_794 | ||
issue_5825 | ||
issue_7030 | ||
load_dynamic_library | ||
main_pkg_path | ||
main_return_error | ||
mix_o_files | ||
pkg_import | ||
shared_library | ||
static_c_lib | ||
use_alias |