On Wed, Apr 23, 2014 at 2:28 PM, Abramo Bagnara <[email protected]>wrote:
> Author: abramo > Date: Wed Apr 23 16:28:18 2014 > New Revision: 207027 > > URL: http://llvm.org/viewvc/llvm-project?rev=207027&view=rev > Log: > Moved operator delete to public area to appease gcc and conform to C++ > standard. > > Modified: > cfe/trunk/include/clang/Analysis/Analyses/ThreadSafetyTIL.h > > Modified: cfe/trunk/include/clang/Analysis/Analyses/ThreadSafetyTIL.h > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Analysis/Analyses/ThreadSafetyTIL.h?rev=207027&r1=207026&r2=207027&view=diff > > ============================================================================== > --- cfe/trunk/include/clang/Analysis/Analyses/ThreadSafetyTIL.h (original) > +++ cfe/trunk/include/clang/Analysis/Analyses/ThreadSafetyTIL.h Wed Apr 23 > 16:28:18 2014 > @@ -104,6 +104,12 @@ public: > return ::operator new(S, R); > } > > + // SExpr objects cannot be deleted. > + // This declaration is public to avoid breaking gcc compilation > + // with REQUIRES_EH=1. > + // The access check is also mandated by C++11 5.3.4p17 and former > standards. > This comment is false. "the deallocation function" here is the one corresponding to the allocation function. Per p20, there is no deallocation function matching the allocation function we use here. This is simply public to work around a GCC bug. > + void operator delete(void *) LLVM_DELETED_FUNCTION; > + > protected: > SExpr(TIL_Opcode Op) : Opcode(Op), Reserved(0), Flags(0) {} > SExpr(const SExpr &E) : Opcode(E.Opcode), Reserved(0), Flags(E.Flags) {} > @@ -115,9 +121,8 @@ protected: > private: > SExpr() LLVM_DELETED_FUNCTION; > > - // SExpr objects must be created in an arena and cannot be deleted. > + // SExpr objects must be created in an arena. > void *operator new(size_t) LLVM_DELETED_FUNCTION; > - void operator delete(void *) LLVM_DELETED_FUNCTION; > }; > > > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
