Skip to content

Mark include directories as SYSTEM for consuming targets#1977

Merged
ericniebler merged 1 commit intoNVIDIA:mainfrom
timrae:feature/system_include
Apr 1, 2026
Merged

Mark include directories as SYSTEM for consuming targets#1977
ericniebler merged 1 commit intoNVIDIA:mainfrom
timrae:feature/system_include

Conversation

@timrae
Copy link
Copy Markdown

@timrae timrae commented Apr 1, 2026

When a project enables -Wreserved-identifier (as recommended by clang for production codebases), including stdexec headers generates >8000 warnings due to the __double_underscore naming convention used internally. These warnings are expected within stdexec itself but should not propagate to consumers.

Adding SYSTEM to target_include_directories causes CMake to pass -isystem instead of -I for stdexec's include paths, suppressing warnings that originate from stdexec headers in consuming projects.

This matches the convention used by other header-heavy libraries (Boost, fmt, spdlog) that use reserved identifiers internally.

When a project enables -Wreserved-identifier (as recommended by clang
for production codebases), including stdexec headers generates >8000
warnings due to the __double_underscore naming convention used
internally. These warnings are expected within stdexec itself but
should not propagate to consumers.

Adding SYSTEM to target_include_directories causes CMake to pass
-isystem instead of -I for stdexec's include paths, suppressing
warnings that originate from stdexec headers in consuming projects.

This matches the convention used by other header-heavy libraries
(Boost, fmt, spdlog) that use reserved identifiers internally.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot bot commented Apr 1, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@ericniebler
Copy link
Copy Markdown
Collaborator

/ok to test ca3797c

@ericniebler ericniebler merged commit e789bca into NVIDIA:main Apr 1, 2026
30 checks passed
@ericniebler
Copy link
Copy Markdown
Collaborator

thanks!

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