-
Notifications
You must be signed in to change notification settings - Fork 161
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
Rework our system header approach to be more error proof #661
Rework our system header approach to be more error proof #661
Conversation
cac49bb
to
cfb9b7c
Compare
I have taken that PR to fix nvbug4367604 |
3d29df7
to
b07b147
Compare
Unfortunately nvcc has some issues with properly handling `_Pragma` for some host compilers Rather than putting another bandaid on just move the `#pragma` into the respective header file
b07b147
to
ba66bbd
Compare
@@ -22,6 +22,10 @@ | |||
# define _CCCL_COMPILER_MSVC | |||
#elif defined(__IBMCPP__) | |||
# define _CCCL_COMPILER_IBM | |||
#elif defined(__INTEL_LLVM_COMPILER) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Funnily enough we were also missing intel compiler in our list
@@ -47,46 +51,44 @@ | |||
#endif | |||
|
|||
// Enforce that cccl headers are treated as system headers | |||
#if defined(_CCCL_COMPILER_GCC) | |||
# define _CCCL_FORCE_SYSTEM_HEADER _Pragma("GCC system_header") | |||
#if defined(_CCCL_COMPILER_GCC) || defined(_CCCL_COMPILER_NVHPC) || defined(_CCCL_COMPILER_ICC) \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the real change. We filter compilers and use the appropriate #pragma depending on the define
libcudacxx/include/cuda/std/detail/libcxx/include/experimental/propagate_const
Outdated
Show resolved
Hide resolved
Co-authored-by: Georgii Evtushenko <[email protected]>
Backport failed for Please cherry-pick the changes locally. git fetch origin branch/2.3.x
git worktree add -d .worktree/backport-661-to-branch/2.3.x origin/branch/2.3.x
cd .worktree/backport-661-to-branch/2.3.x
git checkout -b backport-661-to-branch/2.3.x
ancref=$(git merge-base a9d7d8e26cbab2894d09d086e290b5960c823c62 86815971aaf966cb4e6ab5f67b8176fc5403f4aa)
git cherry-pick -x $ancref..86815971aaf966cb4e6ab5f67b8176fc5403f4aa |
/backport |
Backport failed for Please cherry-pick the changes locally. git fetch origin branch/2.3.x
git worktree add -d .worktree/backport-661-to-branch/2.3.x origin/branch/2.3.x
cd .worktree/backport-661-to-branch/2.3.x
git checkout -b backport-661-to-branch/2.3.x
ancref=$(git merge-base a9d7d8e26cbab2894d09d086e290b5960c823c62 86815971aaf966cb4e6ab5f67b8176fc5403f4aa)
git cherry-pick -x $ancref..86815971aaf966cb4e6ab5f67b8176fc5403f4aa |
Co-authored-by: Georgii Evtushenko <[email protected]>
Co-authored-by: Georgii Evtushenko <[email protected]>
Co-authored-by: Georgii Evtushenko <[email protected]>
No description provided.