aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/ADT/StringRefTest.cpp
diff options
context:
space:
mode:
authorLouis Dionne <ldionne.2@gmail.com>2024-08-21 09:05:55 -0400
committerGitHub <noreply@github.com>2024-08-21 09:05:55 -0400
commitaa088438784dd76a859eee229ddaec17e0cb0651 (patch)
treec0f688b3840893984d4f28774dd562cbc724288f /llvm/unittests/ADT/StringRefTest.cpp
parent4f14bfeddedcf21e0eaf0ff3ddf7b62938f66df5 (diff)
downloadllvm-aa088438784dd76a859eee229ddaec17e0cb0651.zip
llvm-aa088438784dd76a859eee229ddaec17e0cb0651.tar.gz
llvm-aa088438784dd76a859eee229ddaec17e0cb0651.tar.bz2
[libc++] Avoid -Wzero-as-null-pointer-constant in operator<=> (#79465)
Issue #43670 describes a situation where the following comparison will issue a warning when -Wzero-as-null-pointer-constant is enabled: #include <compare> auto b = (1 <=> 2) < 0; This code uses operator<(strong_ordering, Unspecified), which is specified by the Standard to only work with a literal 0. In the library, this is achieved by constructing Unspecified from a pointer, which works but has the downside of triggering the warning. This patch uses an alternative implementation where we require that the operator is used exactly with an int of value 0 (known at compile-time), however that value can technically be an expression like `1 - 1`, which makes us a bit less strict than what's specified in the Standard. Fixes #43670
Diffstat (limited to 'llvm/unittests/ADT/StringRefTest.cpp')
0 files changed, 0 insertions, 0 deletions