fix: include system headers outside extern "C" #1125
No reviewers
Labels
No labels
announcement
bug
build
CI
dependencies
documentation
duplicate
enhancement
experience feedback
feature request
github_actions
help wanted
install
invalid
Long-term
optimization
portability
question
target-specific
test issue
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-Cyan4973/xxHash!1125
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/extern-c-system-headers-1122"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes #1122
Summary
extern "C"region (can force C linkage onto C++ declarations, e.g.arm_neon.hon aarch64 GCC 17).XXH_EXTERNC_PAUSE/XXH_EXTERNC_RESUMEhelpers and wrap all system#includes so they are processed outsideextern "C".Test plan
arm_neon.hconflicting C vs C++ linkage now succeeds.We should first have a CI test that makes the problem visible.
Let me see what I can do.
edit : see #1129
Thanks for the PR,
the proposed solution works, but it also introduces preprocessor complexity, detrimental to future maintenance.
Superseded by #1129, more specifically
959ca516f3, which fixes the same issue in a simpler way.Pull request closed