carlosgalvezp added a comment.

First of all thank you for the contribution! I had just a quick look so here's 
some very preliminary comments, will have more time to deeply review during the 
weekend:

- Unfortunately we cannot simply rename a check like this, since it breaks 
backwards compatibility. We need a period of 2 major releases where both the 
new check and the old check (marked as deprecated) co-exist, so people have 
enough time to port over. Only after those 2 releases can the old check be 
fully removed.
- Contrary to my comment on Github, I no longer think this should be a 
cppcoreguideline check, as it does **not** implement rule F.6. The enforcement 
required is to flag **all** functions (not just the special ones) that cannot 
throw and mark them as noexcept. That's a huge difference with a larger scope 
and impact in a codebase. I personally think that last bit is impractical in a 
real-world project, it would add too much noise.
- This check is also used as an alias to another guideline - HiCPP Rule 12.5.4, 
which strictly only covers move operators. Guideline checks  (HiCPP, 
CppCoreGuidelines) are stricter than the regular checks, and should only cover 
what they intend to cover - no more, no less.
- Special member functions are also copy constructors & assignments, yet those 
don't seem to be part of the rule?




Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D148697/new/

https://reviews.llvm.org/D148697

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to