[PATCH] D158540: Improve error message for constexpr constructors of virtual base classes
Aaron Ballman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Aug 30 05:30:41 PDT 2023
aaron.ballman requested changes to this revision.
aaron.ballman added inline comments.
This revision now requires changes to proceed.
================
Comment at: clang/lib/Sema/SemaDeclCXX.cpp:7808-7809
+ if (!MD->isConsteval()) {
+ Diag(MD->getBeginLoc(), diag::note_incorrect_defaulted_constexpr)
+ << RD << MD;
+ }
----------------
I'm not certain I understand how this note helps users -- the note is always attached to the instance method being defaulted, so it will always appear where the class context is obvious. e.g.,
```
struct S {
constexpr S() = default; // Can quickly tell we're in class S
constexpr S(const S&);
};
constexpr S::S(const S&) = default; // Can still quickly tell we're in class S
```
Do you have some code examples where this note helps clarify in ways I'm not seeing from the test coverage?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D158540/new/
https://reviews.llvm.org/D158540
More information about the cfe-commits
mailing list