Skip to content

Use #if defined(_WIN32) instead of #if _WIN32 in public/coacd.h#101

Merged
SarahWeiii merged 1 commit into
SarahWeiii:mainfrom
vivekgr92:fix-win32-undef
May 4, 2026
Merged

Use #if defined(_WIN32) instead of #if _WIN32 in public/coacd.h#101
SarahWeiii merged 1 commit into
SarahWeiii:mainfrom
vivekgr92:fix-win32-undef

Conversation

@vivekgr92
Copy link
Copy Markdown
Contributor

The bare #if _WIN32 on line 10 of public/coacd.h trips clang's -Wundef ("_WIN32" is not defined, evaluates to 0) on non-Windows platforms when consumers build with -Wundef -Werror.

Concrete case where this surfaces: Unreal Engine 5.7's bundled clang on Linux turns the warning into a fatal error during plugin compile. We hit this while adding Linux support to a UE plugin that consumes CoACD (URLab-Sim/UnrealRoboticsLab#46). For now we patch the header via a build-time overlay; happy to drop that overlay once this lands.

#if defined(_WIN32) is semantically identical to #if _WIN32 (the value of _WIN32 only matters when it's defined, in which case it's 1) and silences the warning. No behaviour change.

One-line patch.

The bare `#if _WIN32` form trips clang's `-Wundef` on non-Windows
platforms when consumers build with `-Wundef -Werror`. Unreal
Engine's bundled clang on Linux is one such consumer; the warning
becomes a fatal error during plugin compile.

`#if defined(_WIN32)` is semantically identical (only matters when
_WIN32 is defined) and silences the warning.
@SarahWeiii SarahWeiii merged commit 446790c into SarahWeiii:main May 4, 2026
8 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants