[PATCH] D52443: Thread safety analysis: Examine constructor arguments

Delesley Hutchins via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 4 15:51:31 PDT 2018


delesley accepted this revision.
delesley added inline comments.
This revision is now accepted and ready to land.


================
Comment at: lib/Analysis/ThreadSafety.cpp:2046
   const CXXConstructorDecl *D = Exp->getConstructor();
   if (D && D->isCopyConstructor()) {
     const Expr* Source = Exp->getArg(0);
----------------
aaronpuchert wrote:
> delesley wrote:
> > As a side note, we should probably special-case the move constructor too, with AK_Written.  That should be in a separate patch, though, and needs to be sequestered under -Wthread-safety-beta, which is complicated.   
> I think your arguments from D52395 apply here as well: the move constructor does not necessarily write. Many simple types are trivially move constructible, and then the move constructor is effectively the same as the copy constructor.
Good point.


Repository:
  rC Clang

https://reviews.llvm.org/D52443





More information about the cfe-commits mailing list