[Sema] Improve diagnostics for const- and ref-qualified member functions
(Re-submission of D39937 with fixed tests.) Adjust wording for const-qualification mismatch to be a little more clear. Also add another diagnostic for a ref qualifier mismatch, which previously produced a useless error (this error path is simply very old; see rL119336): Before: error: cannot initialize object parameter of type 'X0' with an expression of type 'X0' After: error: 'this' argument to member function 'rvalue' is an lvalue, but function has rvalue ref-qualifier Reviewers: aaron.ballman Reviewed By: aaron.ballman Subscribers: lebedev.ri, cfe-commits Differential Revision: https://reviews.llvm.org/D41646 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@321609 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/Basic/DiagnosticSemaKinds.td 11 additions, 7 deletionsinclude/clang/Basic/DiagnosticSemaKinds.td
- lib/Sema/SemaOverload.cpp 21 additions, 2 deletionslib/Sema/SemaOverload.cpp
- test/CXX/over/over.match/over.match.funcs/p4-0x.cpp 36 additions, 2 deletionstest/CXX/over/over.match/over.match.funcs/p4-0x.cpp
- test/CXX/stmt.stmt/stmt.iter/stmt.ranged/p1.cpp 1 addition, 1 deletiontest/CXX/stmt.stmt/stmt.iter/stmt.ranged/p1.cpp
- test/SemaCXX/copy-initialization.cpp 1 addition, 1 deletiontest/SemaCXX/copy-initialization.cpp
- test/SemaCXX/cxx1y-contextual-conversion-tweaks.cpp 5 additions, 5 deletionstest/SemaCXX/cxx1y-contextual-conversion-tweaks.cpp
- test/SemaCXX/cxx2a-pointer-to-const-ref-member.cpp 2 additions, 2 deletionstest/SemaCXX/cxx2a-pointer-to-const-ref-member.cpp
Loading
Please register or sign in to comment