authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-12-03 12:52:28-05:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-12-03 12:52:28-05:00
loga91f55239369b4401aaa50a74ed939f5eb98395d
tree30d671cdd94ecc6d26c57414b21dd70c41af8a89
parent6a046c1bcda1d02d4f9a05ea125ef56b50cf6e7c
signature Commit is signed but in an unrecognized format.

WinMainCRTStartup implies defaulting to console subsystem


2 files changed, 4 insertions(+), 3 deletions(-)

lib/std/builtin.zig+2-1
......@@ -26,7 +26,8 @@ pub const subsystem: ?SubSystem = blk: {
2626 if (is_test) {
2727 break :blk SubSystem.Console;
2828 }
29 if (@hasDecl(root, "WinMain") or
29 if (@hasDecl(root, "main") or
30 @hasDecl(root, "WinMain") or
3031 @hasDecl(root, "wWinMain") or
3132 @hasDecl(root, "WinMainCRTStartup") or
3233 @hasDecl(root, "wWinMainCRTStartup"))
src/codegen.cpp+2-2
......@@ -8229,9 +8229,9 @@ TargetSubsystem detect_subsystem(CodeGen *g) {
82298229 if (g->zig_target->os == OsWindows) {
82308230 if (g->have_dllmain_crt_startup || (g->out_type == OutTypeLib && g->is_dynamic))
82318231 return TargetSubsystemAuto;
8232 if (g->have_c_main || g->is_test_build)
8232 if (g->have_c_main || g->is_test_build || g->have_winmain_crt_startup)
82338233 return TargetSubsystemConsole;
8234 if (g->have_winmain || g->have_winmain_crt_startup)
8234 if (g->have_winmain)
82358235 return TargetSubsystemWindows;
82368236 } else if (g->zig_target->os == OsUefi) {
82378237 return TargetSubsystemEfiApplication;