From: Dmitri Gribenko Date: Sat, 15 Sep 2012 20:20:27 +0000 (+0000) Subject: Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f56faa01936b9cf909623d7f06e3c2569ca4a78e;p=clang Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163983 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/AST/ASTContext.h b/include/clang/AST/ASTContext.h index 3c283bc8f5..eeaba7a71d 100644 --- a/include/clang/AST/ASTContext.h +++ b/include/clang/AST/ASTContext.h @@ -2027,8 +2027,8 @@ public: static unsigned NumImplicitDestructorsDeclared; private: - ASTContext(const ASTContext&); // DO NOT IMPLEMENT - void operator=(const ASTContext&); // DO NOT IMPLEMENT + ASTContext(const ASTContext &) LLVM_DELETED_FUNCTION; + void operator=(const ASTContext &) LLVM_DELETED_FUNCTION; public: /// \brief Initialize built-in types. diff --git a/include/clang/AST/DeclObjC.h b/include/clang/AST/DeclObjC.h index 855fe69461..9e0130ad16 100644 --- a/include/clang/AST/DeclObjC.h +++ b/include/clang/AST/DeclObjC.h @@ -33,8 +33,8 @@ class ObjCPropertyImplDecl; class CXXCtorInitializer; class ObjCListBase { - void operator=(const ObjCListBase &); // DO NOT IMPLEMENT - ObjCListBase(const ObjCListBase&); // DO NOT IMPLEMENT + ObjCListBase(const ObjCListBase &) LLVM_DELETED_FUNCTION; + void operator=(const ObjCListBase &) LLVM_DELETED_FUNCTION; protected: /// List is an array of pointers to objects that are not owned by this object. void **List; diff --git a/include/clang/AST/Expr.h b/include/clang/AST/Expr.h index e5c924d8db..d97c37aa59 100644 --- a/include/clang/AST/Expr.h +++ b/include/clang/AST/Expr.h @@ -1132,8 +1132,8 @@ class APNumericStorage { bool hasAllocation() const { return llvm::APInt::getNumWords(BitWidth) > 1; } - APNumericStorage(const APNumericStorage&); // do not implement - APNumericStorage& operator=(const APNumericStorage&); // do not implement + APNumericStorage(const APNumericStorage &) LLVM_DELETED_FUNCTION; + void operator=(const APNumericStorage &) LLVM_DELETED_FUNCTION; protected: APNumericStorage() : VAL(0), BitWidth(0) { } diff --git a/include/clang/AST/RecordLayout.h b/include/clang/AST/RecordLayout.h index 3a870d057b..36556469ea 100644 --- a/include/clang/AST/RecordLayout.h +++ b/include/clang/AST/RecordLayout.h @@ -136,8 +136,8 @@ private: void Destroy(ASTContext &Ctx); - ASTRecordLayout(const ASTRecordLayout&); // DO NOT IMPLEMENT - void operator=(const ASTRecordLayout&); // DO NOT IMPLEMENT + ASTRecordLayout(const ASTRecordLayout &) LLVM_DELETED_FUNCTION; + void operator=(const ASTRecordLayout &) LLVM_DELETED_FUNCTION; public: /// getAlignment - Get the record alignment in characters. diff --git a/include/clang/AST/Type.h b/include/clang/AST/Type.h index 2d99a8c2ef..7811be0e83 100644 --- a/include/clang/AST/Type.h +++ b/include/clang/AST/Type.h @@ -1181,8 +1181,8 @@ public: }; private: - Type(const Type&); // DO NOT IMPLEMENT. - void operator=(const Type&); // DO NOT IMPLEMENT. + Type(const Type &) LLVM_DELETED_FUNCTION; + void operator=(const Type &) LLVM_DELETED_FUNCTION; /// Bitfields required by the Type class. class TypeBitfields { diff --git a/include/clang/ASTMatchers/ASTMatchersInternal.h b/include/clang/ASTMatchers/ASTMatchersInternal.h index 9e04bd7e7b..38ffb2de75 100644 --- a/include/clang/ASTMatchers/ASTMatchersInternal.h +++ b/include/clang/ASTMatchers/ASTMatchersInternal.h @@ -174,8 +174,8 @@ public: BoundNodesTree build() const; private: - BoundNodesTreeBuilder(const BoundNodesTreeBuilder&); // DO NOT IMPLEMENT - void operator=(const BoundNodesTreeBuilder&); // DO NOT IMPLEMENT + BoundNodesTreeBuilder(const BoundNodesTreeBuilder &) LLVM_DELETED_FUNCTION; + void operator=(const BoundNodesTreeBuilder &) LLVM_DELETED_FUNCTION; BoundNodesMap Bindings; diff --git a/include/clang/Basic/Diagnostic.h b/include/clang/Basic/Diagnostic.h index 3997fb89ba..b7cfa38685 100644 --- a/include/clang/Basic/Diagnostic.h +++ b/include/clang/Basic/Diagnostic.h @@ -837,7 +837,7 @@ class DiagnosticBuilder { /// call to ForceEmit. mutable bool IsForceEmit; - void operator=(const DiagnosticBuilder&); // DO NOT IMPLEMENT + void operator=(const DiagnosticBuilder &) LLVM_DELETED_FUNCTION; friend class DiagnosticsEngine; DiagnosticBuilder() diff --git a/include/clang/Basic/IdentifierTable.h b/include/clang/Basic/IdentifierTable.h index dc6acdaa91..d77c870ec5 100644 --- a/include/clang/Basic/IdentifierTable.h +++ b/include/clang/Basic/IdentifierTable.h @@ -346,8 +346,8 @@ public: /// actual functionality. class IdentifierIterator { private: - IdentifierIterator(const IdentifierIterator&); // Do not implement - IdentifierIterator &operator=(const IdentifierIterator&); // Do not implement + IdentifierIterator(const IdentifierIterator &) LLVM_DELETED_FUNCTION; + void operator=(const IdentifierIterator &) LLVM_DELETED_FUNCTION; protected: IdentifierIterator() { } @@ -695,8 +695,8 @@ public: /// multi-keyword caching. class SelectorTable { void *Impl; // Actually a SelectorTableImpl - SelectorTable(const SelectorTable&); // DISABLED: DO NOT IMPLEMENT - void operator=(const SelectorTable&); // DISABLED: DO NOT IMPLEMENT + SelectorTable(const SelectorTable &) LLVM_DELETED_FUNCTION; + void operator=(const SelectorTable &) LLVM_DELETED_FUNCTION; public: SelectorTable(); ~SelectorTable(); diff --git a/include/clang/Driver/Arg.h b/include/clang/Driver/Arg.h index e466cc3231..149f39a74d 100644 --- a/include/clang/Driver/Arg.h +++ b/include/clang/Driver/Arg.h @@ -33,8 +33,8 @@ namespace driver { /// ArgList to provide efficient iteration over all instances of a /// particular option. class Arg { - Arg(const Arg &); // DO NOT IMPLEMENT - void operator=(const Arg &); // DO NOT IMPLEMENT + Arg(const Arg &) LLVM_DELETED_FUNCTION; + void operator=(const Arg &) LLVM_DELETED_FUNCTION; private: /// \brief The option this argument is an instance of. diff --git a/include/clang/Driver/ArgList.h b/include/clang/Driver/ArgList.h index ce0c79eb97..b2570b01dd 100644 --- a/include/clang/Driver/ArgList.h +++ b/include/clang/Driver/ArgList.h @@ -94,8 +94,8 @@ namespace driver { /// and to iterate over groups of arguments. class ArgList { private: - ArgList(const ArgList &); // DO NOT IMPLEMENT - void operator=(const ArgList &); // DO NOT IMPLEMENT + ArgList(const ArgList &) LLVM_DELETED_FUNCTION; + void operator=(const ArgList &) LLVM_DELETED_FUNCTION; public: typedef SmallVector arglist_type; diff --git a/include/clang/Frontend/ASTUnit.h b/include/clang/Frontend/ASTUnit.h index df16762bea..9e4db4413d 100644 --- a/include/clang/Frontend/ASTUnit.h +++ b/include/clang/Frontend/ASTUnit.h @@ -374,8 +374,8 @@ private: /// \brief Clear out and deallocate void ClearCachedCompletionResults(); - ASTUnit(const ASTUnit&); // DO NOT IMPLEMENT - ASTUnit &operator=(const ASTUnit &); // DO NOT IMPLEMENT + ASTUnit(const ASTUnit &) LLVM_DELETED_FUNCTION; + void operator=(const ASTUnit &) LLVM_DELETED_FUNCTION; explicit ASTUnit(bool MainFileIsAST); diff --git a/include/clang/Frontend/CompilerInstance.h b/include/clang/Frontend/CompilerInstance.h index c819b41314..149735d183 100644 --- a/include/clang/Frontend/CompilerInstance.h +++ b/include/clang/Frontend/CompilerInstance.h @@ -130,8 +130,8 @@ class CompilerInstance : public ModuleLoader { /// The list of active output files. std::list OutputFiles; - void operator=(const CompilerInstance &); // DO NOT IMPLEMENT - CompilerInstance(const CompilerInstance&); // DO NOT IMPLEMENT + CompilerInstance(const CompilerInstance &) LLVM_DELETED_FUNCTION; + void operator=(const CompilerInstance &) LLVM_DELETED_FUNCTION; public: CompilerInstance(); ~CompilerInstance(); diff --git a/include/clang/Frontend/VerifyDiagnosticConsumer.h b/include/clang/Frontend/VerifyDiagnosticConsumer.h index bc39bba0a9..bf27eeea36 100644 --- a/include/clang/Frontend/VerifyDiagnosticConsumer.h +++ b/include/clang/Frontend/VerifyDiagnosticConsumer.h @@ -146,8 +146,8 @@ public: } private: - Directive(const Directive&); // DO NOT IMPLEMENT - void operator=(const Directive&); // DO NOT IMPLEMENT + Directive(const Directive &) LLVM_DELETED_FUNCTION; + void operator=(const Directive &) LLVM_DELETED_FUNCTION; }; typedef std::vector DirectiveList; diff --git a/include/clang/Lex/HeaderMap.h b/include/clang/Lex/HeaderMap.h index 107408dced..8473a6a4e7 100644 --- a/include/clang/Lex/HeaderMap.h +++ b/include/clang/Lex/HeaderMap.h @@ -15,6 +15,7 @@ #define LLVM_CLANG_LEX_HEADERMAP_H #include "clang/Basic/LLVM.h" +#include "llvm/Support/Compiler.h" namespace llvm { class MemoryBuffer; @@ -30,8 +31,8 @@ namespace clang { /// symlinks to files. Its advantages are that it is dense and more efficient /// to create and process than a directory of symlinks. class HeaderMap { - HeaderMap(const HeaderMap&); // DO NOT IMPLEMENT - void operator=(const HeaderMap&); // DO NOT IMPLEMENT + HeaderMap(const HeaderMap &) LLVM_DELETED_FUNCTION; + void operator=(const HeaderMap &) LLVM_DELETED_FUNCTION; const llvm::MemoryBuffer *FileBuffer; bool NeedsBSwap; diff --git a/include/clang/Lex/Lexer.h b/include/clang/Lex/Lexer.h index 31110f9e56..fc3896ccd4 100644 --- a/include/clang/Lex/Lexer.h +++ b/include/clang/Lex/Lexer.h @@ -83,8 +83,8 @@ class Lexer : public PreprocessorLexer { // CurrentConflictMarkerState - The kind of conflict marker we are handling. ConflictMarkerKind CurrentConflictMarkerState; - Lexer(const Lexer&); // DO NOT IMPLEMENT - void operator=(const Lexer&); // DO NOT IMPLEMENT + Lexer(const Lexer &) LLVM_DELETED_FUNCTION; + void operator=(const Lexer &) LLVM_DELETED_FUNCTION; friend class Preprocessor; void InitLexer(const char *BufStart, const char *BufPtr, const char *BufEnd); diff --git a/include/clang/Lex/PTHLexer.h b/include/clang/Lex/PTHLexer.h index f6a97a0a90..a9276e86b7 100644 --- a/include/clang/Lex/PTHLexer.h +++ b/include/clang/Lex/PTHLexer.h @@ -44,8 +44,8 @@ class PTHLexer : public PreprocessorLexer { /// to process when doing quick skipping of preprocessor blocks. const unsigned char* CurPPCondPtr; - PTHLexer(const PTHLexer&); // DO NOT IMPLEMENT - void operator=(const PTHLexer&); // DO NOT IMPLEMENT + PTHLexer(const PTHLexer &) LLVM_DELETED_FUNCTION; + void operator=(const PTHLexer &) LLVM_DELETED_FUNCTION; /// ReadToken - Used by PTHLexer to read tokens TokBuf. void ReadToken(Token& T); diff --git a/include/clang/Lex/PreprocessorLexer.h b/include/clang/Lex/PreprocessorLexer.h index 8a0b3cf51a..20fb8a0c48 100644 --- a/include/clang/Lex/PreprocessorLexer.h +++ b/include/clang/Lex/PreprocessorLexer.h @@ -69,8 +69,8 @@ protected: /// we are currently in. SmallVector ConditionalStack; - PreprocessorLexer(const PreprocessorLexer&); // DO NOT IMPLEMENT - void operator=(const PreprocessorLexer&); // DO NOT IMPLEMENT + PreprocessorLexer(const PreprocessorLexer &) LLVM_DELETED_FUNCTION; + void operator=(const PreprocessorLexer &) LLVM_DELETED_FUNCTION; friend class Preprocessor; PreprocessorLexer(Preprocessor *pp, FileID fid); diff --git a/include/clang/Lex/TokenLexer.h b/include/clang/Lex/TokenLexer.h index e205bec553..090402a811 100644 --- a/include/clang/Lex/TokenLexer.h +++ b/include/clang/Lex/TokenLexer.h @@ -91,8 +91,8 @@ class TokenLexer { /// should not be subject to further macro expansion. bool DisableMacroExpansion : 1; - TokenLexer(const TokenLexer&); // DO NOT IMPLEMENT - void operator=(const TokenLexer&); // DO NOT IMPLEMENT + TokenLexer(const TokenLexer &) LLVM_DELETED_FUNCTION; + void operator=(const TokenLexer &) LLVM_DELETED_FUNCTION; public: /// Create a TokenLexer for the specified macro with the specified actual /// arguments. Note that this ctor takes ownership of the ActualArgs pointer. diff --git a/include/clang/Parse/Parser.h b/include/clang/Parse/Parser.h index dfe9c28a40..c35f1e77d2 100644 --- a/include/clang/Parse/Parser.h +++ b/include/clang/Parse/Parser.h @@ -655,8 +655,8 @@ private: /// the parser will exit the scope. class ParseScope { Parser *Self; - ParseScope(const ParseScope&); // do not implement - ParseScope& operator=(const ParseScope&); // do not implement + ParseScope(const ParseScope &) LLVM_DELETED_FUNCTION; + void operator=(const ParseScope &) LLVM_DELETED_FUNCTION; public: // ParseScope - Construct a new object to manage a scope in the @@ -695,8 +695,8 @@ private: class ParseScopeFlags { Scope *CurScope; unsigned OldFlags; - ParseScopeFlags(const ParseScopeFlags &); // do not implement - void operator=(const ParseScopeFlags &); // do not implement + ParseScopeFlags(const ParseScopeFlags &) LLVM_DELETED_FUNCTION; + void operator=(const ParseScopeFlags &) LLVM_DELETED_FUNCTION; public: ParseScopeFlags(Parser *Self, unsigned ScopeFlags, bool ManageFlags = true); diff --git a/include/clang/Rewrite/Core/DeltaTree.h b/include/clang/Rewrite/Core/DeltaTree.h index f32906a323..a6109bf901 100644 --- a/include/clang/Rewrite/Core/DeltaTree.h +++ b/include/clang/Rewrite/Core/DeltaTree.h @@ -14,6 +14,8 @@ #ifndef CLANG_REWRITE_DELTATREE_H #define CLANG_REWRITE_DELTATREE_H +#include "llvm/Support/Compiler.h" + namespace clang { /// DeltaTree - a multiway search tree (BTree) structure with some fancy @@ -25,7 +27,7 @@ namespace clang { /// as well, without traversing the whole tree. class DeltaTree { void *Root; // "DeltaTreeNode *" - void operator=(const DeltaTree&); // DO NOT IMPLEMENT + void operator=(const DeltaTree &) LLVM_DELETED_FUNCTION; public: DeltaTree(); diff --git a/include/clang/Rewrite/Core/RewriteRope.h b/include/clang/Rewrite/Core/RewriteRope.h index bae8fb7a50..9f1bbe5013 100644 --- a/include/clang/Rewrite/Core/RewriteRope.h +++ b/include/clang/Rewrite/Core/RewriteRope.h @@ -14,6 +14,8 @@ #ifndef LLVM_CLANG_REWRITEROPE_H #define LLVM_CLANG_REWRITEROPE_H +#include "llvm/Support/Compiler.h" + #include #include #include @@ -153,7 +155,7 @@ namespace clang { class RopePieceBTree { void /*RopePieceBTreeNode*/ *Root; - void operator=(const RopePieceBTree &); // DO NOT IMPLEMENT + void operator=(const RopePieceBTree &) LLVM_DELETED_FUNCTION; public: RopePieceBTree(); RopePieceBTree(const RopePieceBTree &RHS); diff --git a/include/clang/Rewrite/Core/TokenRewriter.h b/include/clang/Rewrite/Core/TokenRewriter.h index 894db0953f..ec0bb5ba08 100644 --- a/include/clang/Rewrite/Core/TokenRewriter.h +++ b/include/clang/Rewrite/Core/TokenRewriter.h @@ -43,8 +43,8 @@ namespace clang { /// OwningPtr ScratchBuf; - TokenRewriter(const TokenRewriter&); // DO NOT IMPLEMENT - void operator=(const TokenRewriter&); // DO NOT IMPLEMENT. + TokenRewriter(const TokenRewriter &) LLVM_DELETED_FUNCTION; + void operator=(const TokenRewriter &) LLVM_DELETED_FUNCTION; public: /// TokenRewriter - This creates a TokenRewriter for the file with the /// specified FileID. diff --git a/include/clang/Sema/CodeCompleteConsumer.h b/include/clang/Sema/CodeCompleteConsumer.h index d43aaafb29..90ed2cefb4 100644 --- a/include/clang/Sema/CodeCompleteConsumer.h +++ b/include/clang/Sema/CodeCompleteConsumer.h @@ -450,8 +450,8 @@ private: /// entity being completed by this result. const char *BriefComment; - CodeCompletionString(const CodeCompletionString &); // DO NOT IMPLEMENT - CodeCompletionString &operator=(const CodeCompletionString &); // DITTO + CodeCompletionString(const CodeCompletionString &) LLVM_DELETED_FUNCTION; + void operator=(const CodeCompletionString &) LLVM_DELETED_FUNCTION; CodeCompletionString(const Chunk *Chunks, unsigned NumChunks, unsigned Priority, CXAvailabilityKind Availability, diff --git a/include/clang/Sema/DeclSpec.h b/include/clang/Sema/DeclSpec.h index 4fb6e4fae6..b16d5f8805 100644 --- a/include/clang/Sema/DeclSpec.h +++ b/include/clang/Sema/DeclSpec.h @@ -383,8 +383,8 @@ private: T == TST_class); } - DeclSpec(const DeclSpec&); // DO NOT IMPLEMENT - void operator=(const DeclSpec&); // DO NOT IMPLEMENT + DeclSpec(const DeclSpec &) LLVM_DELETED_FUNCTION; + void operator=(const DeclSpec &) LLVM_DELETED_FUNCTION; public: DeclSpec(AttributeFactory &attrFactory) diff --git a/include/clang/Sema/DelayedDiagnostic.h b/include/clang/Sema/DelayedDiagnostic.h index c241266c9b..1ee8a0dc76 100644 --- a/include/clang/Sema/DelayedDiagnostic.h +++ b/include/clang/Sema/DelayedDiagnostic.h @@ -220,9 +220,8 @@ class DelayedDiagnosticPool { const DelayedDiagnosticPool *Parent; llvm::SmallVector Diagnostics; - // Do not implement. - DelayedDiagnosticPool(const DelayedDiagnosticPool &other); - DelayedDiagnosticPool &operator=(const DelayedDiagnosticPool &other); + DelayedDiagnosticPool(const DelayedDiagnosticPool &) LLVM_DELETED_FUNCTION; + void operator=(const DelayedDiagnosticPool &) LLVM_DELETED_FUNCTION; public: DelayedDiagnosticPool(const DelayedDiagnosticPool *parent) : Parent(parent) {} ~DelayedDiagnosticPool() { diff --git a/include/clang/Sema/Sema.h b/include/clang/Sema/Sema.h index aec76b1848..2cd4688ce5 100644 --- a/include/clang/Sema/Sema.h +++ b/include/clang/Sema/Sema.h @@ -187,8 +187,8 @@ typedef std::pair, /// Sema - This implements semantic analysis and AST building for C. class Sema { - Sema(const Sema&); // DO NOT IMPLEMENT - void operator=(const Sema&); // DO NOT IMPLEMENT + Sema(const Sema &) LLVM_DELETED_FUNCTION; + void operator=(const Sema &) LLVM_DELETED_FUNCTION; mutable const TargetAttributesSema* TheTargetAttributesSema; public: typedef OpaquePtr DeclGroupPtrTy; diff --git a/include/clang/Sema/TemplateDeduction.h b/include/clang/Sema/TemplateDeduction.h index 4c2d876d1f..f785e6ce21 100644 --- a/include/clang/Sema/TemplateDeduction.h +++ b/include/clang/Sema/TemplateDeduction.h @@ -46,9 +46,8 @@ class TemplateDeductionInfo { /// SFINAE while performing template argument deduction. SmallVector SuppressedDiagnostics; - // do not implement these - TemplateDeductionInfo(const TemplateDeductionInfo&); - TemplateDeductionInfo &operator=(const TemplateDeductionInfo&); + TemplateDeductionInfo(const TemplateDeductionInfo &) LLVM_DELETED_FUNCTION; + void operator=(const TemplateDeductionInfo &) LLVM_DELETED_FUNCTION; public: TemplateDeductionInfo(ASTContext &Context, SourceLocation Loc) diff --git a/include/clang/Serialization/ASTReader.h b/include/clang/Serialization/ASTReader.h index 3044504a92..51db35e4d9 100644 --- a/include/clang/Serialization/ASTReader.h +++ b/include/clang/Serialization/ASTReader.h @@ -758,8 +758,8 @@ private: ASTReader &Reader; enum ReadingKind PrevKind; - ReadingKindTracker(const ReadingKindTracker&); // do not implement - ReadingKindTracker &operator=(const ReadingKindTracker&);// do not implement + ReadingKindTracker(const ReadingKindTracker &) LLVM_DELETED_FUNCTION; + void operator=(const ReadingKindTracker &) LLVM_DELETED_FUNCTION; public: ReadingKindTracker(enum ReadingKind newKind, ASTReader &reader) @@ -862,8 +862,8 @@ private: void Error(unsigned DiagID, StringRef Arg1 = StringRef(), StringRef Arg2 = StringRef()); - ASTReader(const ASTReader&); // do not implement - ASTReader &operator=(const ASTReader &); // do not implement + ASTReader(const ASTReader &) LLVM_DELETED_FUNCTION; + void operator=(const ASTReader &) LLVM_DELETED_FUNCTION; public: /// \brief Load the AST file and validate its contents against the given /// Preprocessor. diff --git a/include/clang/Serialization/ContinuousRangeMap.h b/include/clang/Serialization/ContinuousRangeMap.h index f368a80a97..d89cd02903 100644 --- a/include/clang/Serialization/ContinuousRangeMap.h +++ b/include/clang/Serialization/ContinuousRangeMap.h @@ -108,8 +108,8 @@ public: class Builder { ContinuousRangeMap &Self; - Builder(const Builder&); // DO NOT IMPLEMENT - Builder &operator=(const Builder&); // DO NOT IMPLEMENT + Builder(const Builder&) LLVM_DELETED_FUNCTION; + Builder &operator=(const Builder&) LLVM_DELETED_FUNCTION; public: explicit Builder(ContinuousRangeMap &Self) : Self(Self) { } diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h b/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h index 7cbeb201c7..9dc9491cfd 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h @@ -120,8 +120,7 @@ private: const LocationContext *LCtx; llvm::PointerUnion Origin; - // DO NOT IMPLEMENT - CallEvent &operator=(const CallEvent &); + void operator=(const CallEvent &) LLVM_DELETED_FUNCTION; protected: // This is user data for subclasses. diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h b/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h index 506debe0a0..d3f87b7d33 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h @@ -97,8 +97,8 @@ private: ExplodedNode *Pred); private: - CoreEngine(const CoreEngine&); // Do not implement. - CoreEngine& operator=(const CoreEngine&); + CoreEngine(const CoreEngine &) LLVM_DELETED_FUNCTION; + void operator=(const CoreEngine &) LLVM_DELETED_FUNCTION; ExplodedNode *generateCallExitBeginNode(ExplodedNode *N); diff --git a/lib/AST/RecordLayoutBuilder.cpp b/lib/AST/RecordLayoutBuilder.cpp index 6581df4046..fc7586cffd 100644 --- a/lib/AST/RecordLayoutBuilder.cpp +++ b/lib/AST/RecordLayoutBuilder.cpp @@ -789,8 +789,8 @@ protected: void setDataSize(CharUnits NewSize) { DataSize = Context.toBits(NewSize); } void setDataSize(uint64_t NewSize) { DataSize = NewSize; } - RecordLayoutBuilder(const RecordLayoutBuilder&); // DO NOT IMPLEMENT - void operator=(const RecordLayoutBuilder&); // DO NOT IMPLEMENT + RecordLayoutBuilder(const RecordLayoutBuilder &) LLVM_DELETED_FUNCTION; + void operator=(const RecordLayoutBuilder &) LLVM_DELETED_FUNCTION; public: static const CXXMethodDecl *ComputeKeyFunction(const CXXRecordDecl *RD); }; diff --git a/lib/CodeGen/CGRecordLayout.h b/lib/CodeGen/CGRecordLayout.h index 94c822f49f..3db5e0483b 100644 --- a/lib/CodeGen/CGRecordLayout.h +++ b/lib/CodeGen/CGRecordLayout.h @@ -166,8 +166,8 @@ public: class CGRecordLayout { friend class CodeGenTypes; - CGRecordLayout(const CGRecordLayout&); // DO NOT IMPLEMENT - void operator=(const CGRecordLayout&); // DO NOT IMPLEMENT + CGRecordLayout(const CGRecordLayout &) LLVM_DELETED_FUNCTION; + void operator=(const CGRecordLayout &) LLVM_DELETED_FUNCTION; private: /// The LLVM type corresponding to this record layout; used when diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h index c9c4a6dbe4..fc930ec158 100644 --- a/lib/CodeGen/CodeGenFunction.h +++ b/lib/CodeGen/CodeGenFunction.h @@ -532,8 +532,8 @@ public: /// CodeGenFunction - This class organizes the per-function state that is used /// while generating LLVM code. class CodeGenFunction : public CodeGenTypeCache { - CodeGenFunction(const CodeGenFunction&); // DO NOT IMPLEMENT - void operator=(const CodeGenFunction&); // DO NOT IMPLEMENT + CodeGenFunction(const CodeGenFunction &) LLVM_DELETED_FUNCTION; + void operator=(const CodeGenFunction &) LLVM_DELETED_FUNCTION; friend class CGCXXABI; public: @@ -794,8 +794,8 @@ public: bool OldDidCallStackSave; bool PerformCleanup; - RunCleanupsScope(const RunCleanupsScope &); // DO NOT IMPLEMENT - RunCleanupsScope &operator=(const RunCleanupsScope &); // DO NOT IMPLEMENT + RunCleanupsScope(const RunCleanupsScope &) LLVM_DELETED_FUNCTION; + void operator=(const RunCleanupsScope &) LLVM_DELETED_FUNCTION; protected: CodeGenFunction& CGF; @@ -838,8 +838,8 @@ public: SourceRange Range; bool PopDebugStack; - LexicalScope(const LexicalScope &); // DO NOT IMPLEMENT THESE - LexicalScope &operator=(const LexicalScope &); + LexicalScope(const LexicalScope &) LLVM_DELETED_FUNCTION; + void operator=(const LexicalScope &) LLVM_DELETED_FUNCTION; public: /// \brief Enter a new cleanup scope. diff --git a/lib/CodeGen/CodeGenModule.h b/lib/CodeGen/CodeGenModule.h index d6ff50d5ad..6e81693f7f 100644 --- a/lib/CodeGen/CodeGenModule.h +++ b/lib/CodeGen/CodeGenModule.h @@ -210,8 +210,8 @@ struct ARCEntrypoints { /// CodeGenModule - This class organizes the cross-function state that is used /// while generating LLVM code. class CodeGenModule : public CodeGenTypeCache { - CodeGenModule(const CodeGenModule&); // DO NOT IMPLEMENT - void operator=(const CodeGenModule&); // DO NOT IMPLEMENT + CodeGenModule(const CodeGenModule &) LLVM_DELETED_FUNCTION; + void operator=(const CodeGenModule &) LLVM_DELETED_FUNCTION; typedef std::vector > CtorList; diff --git a/lib/Parse/RAIIObjectsForParser.h b/lib/Parse/RAIIObjectsForParser.h index 455c4af2ff..060fd206cd 100644 --- a/lib/Parse/RAIIObjectsForParser.h +++ b/lib/Parse/RAIIObjectsForParser.h @@ -87,9 +87,8 @@ namespace clang { Sema::ParsingDeclState State; bool Popped; - // Do not implement. - ParsingDeclRAIIObject(const ParsingDeclRAIIObject &other); - ParsingDeclRAIIObject &operator=(const ParsingDeclRAIIObject &other); + ParsingDeclRAIIObject(const ParsingDeclRAIIObject &) LLVM_DELETED_FUNCTION; + void operator=(const ParsingDeclRAIIObject &) LLVM_DELETED_FUNCTION; public: enum NoParent_t { NoParent }; @@ -245,8 +244,9 @@ namespace clang { /// the way they used to be. This is used to handle __extension__ in the /// parser. class ExtensionRAIIObject { - void operator=(const ExtensionRAIIObject &); // DO NOT IMPLEMENT - ExtensionRAIIObject(const ExtensionRAIIObject&); // DO NOT IMPLEMENT + ExtensionRAIIObject(const ExtensionRAIIObject &) LLVM_DELETED_FUNCTION; + void operator=(const ExtensionRAIIObject &) LLVM_DELETED_FUNCTION; + DiagnosticsEngine &Diags; public: ExtensionRAIIObject(DiagnosticsEngine &diags) : Diags(diags) { diff --git a/lib/Serialization/ASTReaderDecl.cpp b/lib/Serialization/ASTReaderDecl.cpp index 7aac2ac3ed..044d642fb9 100644 --- a/lib/Serialization/ASTReaderDecl.cpp +++ b/lib/Serialization/ASTReaderDecl.cpp @@ -116,7 +116,7 @@ namespace clang { GlobalDeclID FirstID; mutable bool Owning; - RedeclarableResult &operator=(RedeclarableResult&); // DO NOT IMPLEMENT + void operator=(RedeclarableResult &) LLVM_DELETED_FUNCTION; public: RedeclarableResult(ASTReader &Reader, GlobalDeclID FirstID) @@ -162,7 +162,7 @@ namespace clang { NamedDecl *Existing; mutable bool AddResult; - FindExistingResult &operator=(FindExistingResult&); // DO NOT IMPLEMENT + void operator=(FindExistingResult&) LLVM_DELETED_FUNCTION; public: FindExistingResult(ASTReader &Reader) diff --git a/tools/libclang/IndexingContext.h b/tools/libclang/IndexingContext.h index ef5ed07e36..be21927c5b 100644 --- a/tools/libclang/IndexingContext.h +++ b/tools/libclang/IndexingContext.h @@ -251,8 +251,8 @@ class AttrListInfo { SmallVector CXAttrs; unsigned ref_cnt; - AttrListInfo(const AttrListInfo&); // DO NOT IMPLEMENT - void operator=(const AttrListInfo&); // DO NOT IMPLEMENT + AttrListInfo(const AttrListInfo &) LLVM_DELETED_FUNCTION; + void operator=(const AttrListInfo &) LLVM_DELETED_FUNCTION; public: AttrListInfo(const Decl *D, IndexingContext &IdxCtx);