Old versions of gcc allow nameless unions, but can't parse them in designated initializers.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50378
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
While wine's configure checks and requires that the ms_abi attribute
is supported on aarch64 (without it, variadic functions don't have the
correct ABI), these headers are also included when building widl as a
generic cross compilation tool as part of mingw-w64-tools. In the case
of widl, the functions that use these attributes (and in particular,
their ABI) doesn't matter as they aren't used/called, they're just
included as a side effect of including the headers that widl actually
needs.
This fixes building the widl tool for aarch64 linux with GCC, even if
wine itself can't be built in that configuration.
Only windef.h is used/needed by widl, but update msvcrt/corecrt.h as
well to keep these definitions in sync.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This one doesn't depend on previous patches in the sequence.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
When there are multiple monitors and their monitor region union can still be represented by a simple
rectangle, the clip box region type for the screen DC is still SIMPLEREGION.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Clang 12 doesn't consider a function with an inconsistent signature
as matching the intrinsic.
This fixes InterlockedCompareExchange128 with clang 12 in MSVC mode.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
In MSVC mode, the __SEH__ macro isn't defined, but the .seh directives
are supported in assembly. In these cases, we have to hardcode which
architectures we know clang supports SEH directives in as it's not
exposed otherwise.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This allows using the arch independent llvm-dlltool without the
llvm-mingw specific <triple>-dlltool wrappers.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
When targeting arm64 in MSVC mode, LLVM treats semicolons in assembly
as comment char, instead of as statement separator (contrary to in
mingw mode, where semicolons still work as separator). In generated code,
there's no need to keep these directives on one single line though, so
just separate them with newlines.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
StdRegProv is not available on ROOT\\CIMV2 for unknown reason on some Windows configs.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Based on a patch by Alistair Leslie-Hughes.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49650
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This seems to be a variation of a bug already encountered; here the kernel does
not report the right value in the IOSB until after completion is signaled.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48587
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Currently, if call_user_apc_dispatcher() is called with nonzero context,
there is no guarantee that the provided context is stored above the
rsp = context_ptr->Rsp - (sizeof(CONTEXT) + offsetof(frame,ret_addr))
being set.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>