These are used by wine for exports that re-export the import stub function from an import library.
We don't need to do anything here, so simply ignore it.
VS2022 version 17.2 and later (`_MSC_VER >= 1932`) added new intrinsic
functions (`strncmp`, `strncpy`, `wcsncmp`, and `wcsncpy`).
As we implement these ourselves, we have to avoid compiler error C2169.
This problem surfaced with a recent GitHub Actions update:
https://github.com/actions/runner-images/issues/14017
Use `#pragma function(...)` to disable new intrinsic functions.
The build uses -nostdlib which prevents GCC from auto-linking libgcc_eh.a. This library provides the SEH unwind symbols (_Unwind_Resume, __emutls_get_address, etc.) needed by C++ exception handling. Without it, any C++ target compiled with -fexceptions fails to link with undefined references to these symbols.
Add a libgcc_eh INTERFACE target that conditionally pulls in libgcc_eh.a when the toolchain provides it (as on SEH-enabled x86_64), falling back to a no-op otherwise (SJLJ/DWARF toolchains).
- Write InstallationType to registry.
- If installing as Server Core, set shell to cmd.exe.
- Rename "Product Option" to "Install Type" and adjust relevant variable names.
- Reserve Nano Server installation type for future use.
JIRA issue: CORE-20645
It is the same function as RtlInterlockedPushListSList, but with stdcall calling convention instead of fastcall.
On x86 this is a wrapper, on all other architectures it is simply a forwarder.
Implementing missing features...
JIRA issue: N/A
- Implement CShellDispatch::EjectPC
by using TRAYCMD_EJECT tray
command.
- Add TRAYCMD_SUSPEND and
TRAYCMD_REFRESH_MENU tray
commands (they have no effect)
into <undocshell.h>.
Make our tray window working as
Windows' one.
JIRA issue: CORE-10675
- Add REST_NOCLOSE restriction
to CTrayWindow::DoExitWindows
method.
- Add TRAYCMD_EJECT constant
to <undocshell.h>.
- Implement TRAYCMD_STARTMENU,
TRAYCMD_EJECT,
TRAYCMD_CONTROL_PANEL, and
TRAYCMD_PRINTERS_AND_FAXES
tray commands.
- Add import to setupapi to use
CM_Request_Eject_PC function.
Preparation for new ShellExecute.
JIRA issue: CORE-20467
- Move ASSOCQUERY and
IAssociationElementOld in
<shlwapi_undoc.h> into
<shlobj_undoc.h>.
- Add IQuerySourceOld, IQuerySource,
IObjectWithQuerySource, and
IAssociationArrayInitialize
interfaces into <shlobj_undoc.h>.
- Add some GUIDs into
<shlguid_undoc.h>.
- Do #include <shlwapi_undoc.h>
in sysdm performance.c to fix build.
- Use the NT6 structure of _RTL_USER_PROCESS_PARAMETERS
- Fix string alignment to match Vista+
- Use ImageName as fallback for the CommandLine
- Use NULL-string as fallback fo RuntimeData
- Copy the environment instead of just copying the pointer
- Fixes a number of ntdll_winetest:env tests
Stop `PS_JOB_TOKEN_FILTER`'s pack(1) scope from leaking into `EJOB`, which misaligns kernel fields on ARM64.
Use the Win64 heap entry layout on ARM64 and assert the heap metadata offsets verified against NT ARM64 symbols.
Keep heap alignment masks pointer-sized and size `STACK_TRACE_DATABASE` `ERESOURCE` padding for all Win64 targets.
CORE-18200
* [ASMPP] Translate MASM NOT as bitwise complement
MASM NOT is a bitwise operator. Emitting C/GAS logical negation changes numeric constant values, for example X87XAM_BAD becomes 0 instead of 0xf800.
* [ASMPP] Support additional MASM expression operators
Map MASM expression operators through a single helper and add support for shr, eq, ne, lt, le, gt, and ge. This keeps existing and/or/shl/not handling while allowing expressions outside the instruction-token set.
* [ASMPP] Translate MASM if expressions
Handle plain MASM if through the expression translator so operators like ne are emitted as Clang/GAS syntax. Keep ifdef, ifndef, else, and endif on the existing directive path.
* [ASMPP] Handle RIP-relative numeric offsets
Keep constant +/- offsets before the emitted [rip] suffix so Clang IAS sees forms like symbol+4[rip] instead of the invalid symbol[rip]+4.
* [ASMPP] Balance FRAME procedure unwind directives
Clang IAS rejects .func/.endfunc and requires .seh_endproc or .cfi_endproc to match an active frame. Track whether each PROC line contains FRAME, including forms such as PROC PRIVATE FRAME, and emit the closing unwind directive only for framed procedures.
* [ASMPP] Simplify whitespace skipping for RIP offsets