zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 79ec08fe2f06f30f1759cb1f94e3ea162309e79b (tree)
parent ddd39b994b1eb9751d06227c6db02f15a5f71e9f
Author: DixiE <anthonyarian96@gmail.com>
Date:   Fri, 23 Oct 2020 00:34:32 +0100

Fix Compiler Error When Using wWinMain Entry-Point

The fix for #6715 introduced a new compiler error when attempting to use
wWinMain as the application entry-point.

The Windows API often relies on implicit casts between signed and
unsigned variables. In this case, wWinMain returns an INT despite the
fact this value is intended to feed into ExitProcess, which expects a
UINT, so I've restored the bitcast from #5613.

Diffstat:
Mlib/std/start.zig | 3++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/std/start.zig b/lib/std/start.zig @@ -173,7 +173,8 @@ fn wWinMainCRTStartup() callconv(.Stdcall) noreturn { std.debug.maybeEnableSegfaultHandler(); - std.os.windows.kernel32.ExitProcess(initEventLoopAndCallWinMain()); + const result: std.os.windows.INT = initEventLoopAndCallWinMain(); + std.os.windows.kernel32.ExitProcess(@bitCast(std.os.windows.UINT, result)); } // TODO https://github.com/ziglang/zig/issues/265