clang-tools: handle -cxx-isystem in wrapper#475078
Merged
alyssais merged 1 commit intoNixOS:masterfrom Dec 29, 2025
Merged
Conversation
The libcxx-cxxflags file uses -cxx-isystem instead of -isystem for C++ include paths. Without handling this flag, the CPLUS_INCLUDE_PATH was not being set correctly, causing clang-tidy to fail finding standard library headers like <iostream> and <cstring>.
Mic92
added a commit
to GrahamDennis/nix-eval-jobs
that referenced
this pull request
Dec 29, 2025
Temporarily use a nixpkgs fork that fixes the clang-tools wrapper to handle -cxx-isystem flags (NixOS/nixpkgs#475078). Without this fix, clang-tidy cannot find C++ standard library headers. Code fixes: - Use member initializer lists in Drv and Proc constructors to satisfy cppcoreguidelines-prefer-member-initializer - Refactor Proc to use constructor delegation pattern for proper member initialization - Remove redundant {} initializers that triggered readability-redundant-member-init - Add NOLINT for warnings triggered by nix headers (header cycle, missing designated field initializers)
Member
Author
|
Tested in NixOS/nix-eval-jobs#392 |
Mic92
added a commit
to GrahamDennis/nix-eval-jobs
that referenced
this pull request
Dec 29, 2025
- Use nixpkgs fork with clang-tools -cxx-isystem fix (NixOS/nixpkgs#475078) - Remove redundant {} initializers on class members - Use member initializer list in Drv constructor - Add NOLINT for nix header include cycle and missing designated initializers
Member
Member
Author
Contributor
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin release-25.11
git worktree add -d .worktree/backport-475078-to-release-25.11 origin/release-25.11
cd .worktree/backport-475078-to-release-25.11
git switch --create backport-475078-to-release-25.11
git cherry-pick -x 91bc3381e467c2bdda0659bff9f7c5eaa5a1893a |
13 tasks
matt1432
added a commit
to matt1432/hyprgrass
that referenced
this pull request
Jan 10, 2026
clang stuff was broken in nixpkgs but got fixed in NixOS/nixpkgs#475078
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The libcxx-cxxflags file uses -cxx-isystem instead of -isystem for C++
include paths. Without handling this flag, the CPLUS_INCLUDE_PATH was
not being set correctly, causing clang-tidy to fail finding standard
library headers like and .
Things done
passthru.tests.nixpkgs-reviewon this PR. See nixpkgs-review usage../result/bin/.Add a 👍 reaction to pull requests you find important.