diff options
author | Louis Dionne <ldionne.2@gmail.com> | 2024-03-04 18:24:51 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-04 18:24:51 -0500 |
commit | 40081a45a14f7aa6249fa034d961549c0b1762a0 (patch) | |
tree | f0e86827bb7ed8047e2fb8dd7caa13446c07017c /llvm/lib/Transforms/Utils/LoopUtils.cpp | |
parent | 5174b3802575425dcbc58680ccce10961fdb8b67 (diff) | |
download | llvm-40081a45a14f7aa6249fa034d961549c0b1762a0.zip llvm-40081a45a14f7aa6249fa034d961549c0b1762a0.tar.gz llvm-40081a45a14f7aa6249fa034d961549c0b1762a0.tar.bz2 |
[libc++] Fix diagnostic for <stdatomic.h> before C++23 (#83351)
We normally try to issue a reasonable diagnostic when mixing
<stdatomic.h> and <atomic> before C++23. However, after granularizing
the <atomic> header, the check and the #error message was moved to
*after* the point where mixing both causes problems. When mixing both
headers, we would hence get the diagnostic burried under a pile of
previous diagnostics in e.g. __atomic/kill_dependency.h.
This patch moves the check earlier to restore the intended behavior. It
also switches from `#ifdef kill_dependency` to an explicit check of the
inclusion of the header and the Standard version, which seems to be more
reliable than checking whether a macro is defined.
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
0 files changed, 0 insertions, 0 deletions