[PATCH] D149718: [NFC][Clang] Fix Coverity issues of copy without assign
Soumi Manna via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue May 2 19:37:45 PDT 2023
Manna created this revision.
Manna added a reviewer: tahonermann.
Herald added a reviewer: NoQ.
Herald added a project: All.
Manna requested review of this revision.
Herald added a project: clang.
This patch adds missing assignment operator to the class which has user-defined copy/move constructor.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D149718
Files:
clang/include/clang/Analysis/BodyFarm.h
clang/include/clang/Sema/ParsedAttr.h
clang/include/clang/Sema/Sema.h
clang/lib/Analysis/UnsafeBufferUsage.cpp
clang/lib/Serialization/ASTWriterStmt.cpp
Index: clang/lib/Serialization/ASTWriterStmt.cpp
===================================================================
--- clang/lib/Serialization/ASTWriterStmt.cpp
+++ clang/lib/Serialization/ASTWriterStmt.cpp
@@ -42,6 +42,7 @@
Code(serialization::STMT_NULL_PTR), AbbrevToUse(0) {}
ASTStmtWriter(const ASTStmtWriter&) = delete;
+ ASTStmtWriter &operator=(const ASTStmtWriter&) = delete;
uint64_t Emit() {
assert(Code != serialization::STMT_NULL_PTR &&
Index: clang/lib/Analysis/UnsafeBufferUsage.cpp
===================================================================
--- clang/lib/Analysis/UnsafeBufferUsage.cpp
+++ clang/lib/Analysis/UnsafeBufferUsage.cpp
@@ -762,6 +762,7 @@
public:
Strategy() = default;
Strategy(const Strategy &) = delete; // Let's avoid copies.
+ Strategy &operator=(const Strategy &) = delete;
Strategy(Strategy &&) = default;
void set(const VarDecl *VD, Kind K) { Map[VD] = K; }
Index: clang/include/clang/Sema/Sema.h
===================================================================
--- clang/include/clang/Sema/Sema.h
+++ clang/include/clang/Sema/Sema.h
@@ -1783,6 +1783,7 @@
SemaDiagnosticBuilder(Kind K, SourceLocation Loc, unsigned DiagID,
const FunctionDecl *Fn, Sema &S);
SemaDiagnosticBuilder(SemaDiagnosticBuilder &&D);
+ SemaDiagnosticBuilder &operator=(SemaDiagnosticBuilder &&D);
SemaDiagnosticBuilder(const SemaDiagnosticBuilder &) = default;
~SemaDiagnosticBuilder();
Index: clang/include/clang/Sema/ParsedAttr.h
===================================================================
--- clang/include/clang/Sema/ParsedAttr.h
+++ clang/include/clang/Sema/ParsedAttr.h
@@ -696,6 +696,7 @@
AttributePool(AttributeFactory &factory) : Factory(factory) {}
AttributePool(const AttributePool &) = delete;
+ AttributePool &operator=(const AttributePool &) = delete;
~AttributePool() { Factory.reclaimPool(*this); }
@@ -912,6 +913,7 @@
public:
ParsedAttributes(AttributeFactory &factory) : pool(factory) {}
ParsedAttributes(const ParsedAttributes &) = delete;
+ ParsedAttributes &operator=(const ParsedAttributes &) = delete;
AttributePool &getPool() const { return pool; }
Index: clang/include/clang/Analysis/BodyFarm.h
===================================================================
--- clang/include/clang/Analysis/BodyFarm.h
+++ clang/include/clang/Analysis/BodyFarm.h
@@ -40,6 +40,9 @@
/// Remove copy constructor to avoid accidental copying.
BodyFarm(const BodyFarm &other) = delete;
+ /// Copy assignment opearator.
+ BodyFarm &operator=(const BodyFarm &other) = delete;
+
private:
typedef llvm::DenseMap<const Decl *, std::optional<Stmt *>> BodyMap;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D149718.518948.patch
Type: text/x-patch
Size: 2740 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230503/87a03c33/attachment.bin>
More information about the cfe-commits
mailing list