bolt/deps/llvm-18.1.8/clang/test/CXX/over/over.built/ast-20.cpp
2025-02-14 19:21:04 +01:00

22 lines
659 B
C++

// RUN: %clang_cc1 -std=c++20 -ast-dump %s -ast-dump-filter Test | FileCheck %s
namespace std {
struct strong_ordering {
int n;
constexpr operator int() const { return n; }
static const strong_ordering less, equal, greater;
};
constexpr strong_ordering strong_ordering::less{-1},
strong_ordering::equal{0}, strong_ordering::greater{1};
}
template <typename T, typename U>
auto Test(T* pt, U* pu) {
// CHECK: BinaryOperator {{.*}} '<dependent type>' '<=>'
// CHECK-NEXT: DeclRefExpr {{.*}} 'T *' lvalue ParmVar {{.*}} 'pt' 'T *'
// CHECK-NEXT: DeclRefExpr {{.*}} 'U *' lvalue ParmVar {{.*}} 'pu' 'U *'
(void)(pt <=> pu);
}