diff --git a/src/codegen.cpp b/src/codegen.cpp index b401c9d973..ef3851006f 100644 --- a/src/codegen.cpp +++ b/src/codegen.cpp @@ -7919,13 +7919,13 @@ Buf *codegen_generate_builtin_source(CodeGen *g) { "EfiRuntimeDriver", }; - if (g->subsystem == TargetSubsystemAuto) { + if (g->zig_target->os != OsWindows || g->zig_target->os != OsUefi || g->have_dllmain_crt_startup || g->out_type == OutTypeLib) { + buf_appendf(contents, "pub const subsystem = null;\n"); + } else if (g->subsystem == TargetSubsystemAuto) { if (g->have_c_main || g->have_pub_main) { buf_appendf(contents, "pub const subsystem = SubSystem.%s;\n", subsystem_strings[TargetSubsystemConsole - 1]); } else if (g->have_winmain || g->have_winmain_crt_startup) { buf_appendf(contents, "pub const subsystem = SubSystem.%s;\n", subsystem_strings[TargetSubsystemWindows - 1]); - } else if (g->have_dllmain_crt_startup || g->out_type == OutTypeLib) { - buf_appendf(contents, "pub const subsystem = null;\n"); } } else { buf_appendf(contents, "pub const subsystem = SubSystem.%s;\n", subsystem_strings[g->subsystem - 1]);