[c++20] Synthesis of defaulted comparison functions.
authorRichard Smith <richard@metafoo.co.uk>
Wed, 4 Dec 2019 23:25:27 +0000 (15:25 -0800)
committerRichard Smith <richard@metafoo.co.uk>
Mon, 9 Dec 2019 07:21:52 +0000 (23:21 -0800)
commitcafc7416baf7eecef8ecaf05802f2f7c0da725c0
tree3ba432597b80af750b0263767ed58d5df9f46865
parent27f5d35137cb45e60d9988a9b55875883c55023c
[c++20] Synthesis of defaulted comparison functions.

Array members are not yet handled. In addition, defaulted comparisons
can't yet find comparison operators by unqualified lookup (only by
member lookup and ADL). These issues will be fixed in follow-on changes.
16 files changed:
clang/include/clang/AST/Decl.h
clang/include/clang/AST/DeclCXX.h
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/include/clang/Sema/Sema.h
clang/lib/AST/ExprConstant.cpp
clang/lib/Sema/SemaDeclCXX.cpp
clang/lib/Sema/SemaExpr.cpp
clang/lib/Sema/SemaOverload.cpp
clang/lib/Sema/SemaTemplateInstantiate.cpp
clang/test/CXX/class/class.compare/class.compare.default/p2.cpp
clang/test/CXX/class/class.compare/class.compare.default/p5.cpp [new file with mode: 0644]
clang/test/CXX/class/class.compare/class.eq/p2.cpp
clang/test/CXX/class/class.compare/class.eq/p3.cpp [new file with mode: 0644]
clang/test/CXX/class/class.compare/class.rel/p2.cpp
clang/test/CXX/class/class.compare/class.spaceship/p1.cpp
clang/test/CXX/class/class.compare/class.spaceship/p3.cpp [new file with mode: 0644]