[c++2a] Allow comparison functions to be explicitly defaulted.
authorRichard Smith <richard@metafoo.co.uk>
Wed, 23 Oct 2019 00:44:08 +0000 (17:44 -0700)
committerRichard Smith <richard@metafoo.co.uk>
Wed, 23 Oct 2019 01:16:17 +0000 (18:16 -0700)
commitd052a578de58cbbb638cbe2dba05242d1ff443b9
tree2f3ed903007c6a0459234ce4d05c40e8a33889a6
parent437e0e5191ca255db27e86d232020844c1fd08c8
[c++2a] Allow comparison functions to be explicitly defaulted.

This adds some initial syntactic checking that only the appropriate
function signatures can be defaulted. No implicit definitions are
generated yet.
17 files changed:
clang/include/clang/AST/Decl.h
clang/include/clang/Basic/DiagnosticCommonKinds.td
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/include/clang/Sema/Sema.h
clang/lib/AST/Decl.cpp
clang/lib/Parse/ParseDecl.cpp
clang/lib/Parse/ParseDeclCXX.cpp
clang/lib/Sema/SemaDecl.cpp
clang/lib/Sema/SemaDeclCXX.cpp
clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
clang/test/CXX/class/class.compare/class.compare.default/p1.cpp [new file with mode: 0644]
clang/test/CXX/class/class.compare/class.eq/p1.cpp [new file with mode: 0644]
clang/test/CXX/class/class.compare/class.rel/p1.cpp [new file with mode: 0644]
clang/test/CXX/dcl.decl/dcl.fct.def/dcl.fct.def.default/p1.cpp
clang/test/Parser/cxx0x-decl.cpp
clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
clang/test/SemaCXX/cxx17-compat.cpp