-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Properly test internal headers #1258
Conversation
76c19c2
to
fe7e184
Compare
9d61cfe
to
87093a2
Compare
87093a2
to
db2ae15
Compare
@gevtushenko @robertmaynard I believe I have implemented the internal header test functionality in CMAKE. That said, while I see that the file is actually used and the target generated, it seems to never be compiled. thoughts? |
f2a6cd9
to
7b7b9b2
Compare
7b7b9b2
to
efe6a84
Compare
Looking at https://github.com/NVIDIA/cccl/actions/runs/7542844478/job/20532768330?pr=1258 I see header tests are being compiled. So I think you resolved this issue? |
efe6a84
to
7634629
Compare
e201a1e
to
751f86d
Compare
27e89be
to
dba5031
Compare
50892fc
to
b5248a6
Compare
5bfbb0d
to
ddf246b
Compare
ddf246b
to
dd5a517
Compare
Backport failed for Please cherry-pick the changes locally. git fetch origin branch/2.3.x
git worktree add -d .worktree/backport-1258-to-branch/2.3.x origin/branch/2.3.x
cd .worktree/backport-1258-to-branch/2.3.x
git checkout -b backport-1258-to-branch/2.3.x
ancref=$(git merge-base 6034056fa7c37b7244920b1eb653b35b5a945a80 345b08e3fbdc1c1500992638af43e056d65ffd8f)
git cherry-pick -x $ancref..345b08e3fbdc1c1500992638af43e056d65ffd8f |
* Add tests for internal headers, so that we know that they do not rely on transitive includes * Add tests for fallback definitions of traits, to ensure hat all fallbacks are functional * Add tests that all public headers can be included * Add tests that all public headers can be included by just a host compiler Co-authored-by: Wesley Maxey <wesley.maxey@gmail.com>
* Add tests for internal headers, so that we know that they do not rely on transitive includes * Add tests for fallback definitions of traits, to ensure hat all fallbacks are functional * Add tests that all public headers can be included * Add tests that all public headers can be included by just a host compiler Co-authored-by: Wesley Maxey <wesley.maxey@gmail.com>
* Add tests for internal headers, so that we know that they do not rely on transitive includes * Add tests for fallback definitions of traits, to ensure hat all fallbacks are functional * Add tests that all public headers can be included * Add tests that all public headers can be included by just a host compiler Co-authored-by: Wesley Maxey <wesley.maxey@gmail.com>
Currently we werent testing all potential fallbacks we are using because some of the intrinsics are just available everywhere. This obviously led to some bugs slip in that would break everthing that includes type_traits.
To prevent this from happening again, add a script that crawls all internal headers and ensures both that they are building on their own and that all fallbacks path are at least exercised
This addresses nvbug4433362