[clang] d68aae3 - [analyzer][NFC] Simplify CStringChecker strong types
Balazs Benics via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 7 04:49:32 PDT 2023
Author: Balazs Benics
Date: 2023-07-07T13:48:18+02:00
New Revision: d68aae3ff5d484e0792fdd86d444739edff0b56d
URL: https://github.com/llvm/llvm-project/commit/d68aae3ff5d484e0792fdd86d444739edff0b56d
DIFF: https://github.com/llvm/llvm-project/commit/d68aae3ff5d484e0792fdd86d444739edff0b56d.diff
LOG: [analyzer][NFC] Simplify CStringChecker strong types
Added:
Modified:
clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
Removed:
################################################################################
diff --git a/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
index e27b006903af3e..1bf6592ee6d8e0 100644
--- a/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
@@ -36,24 +36,12 @@ using namespace std::placeholders;
namespace {
struct AnyArgExpr {
- // FIXME: Remove constructor in C++17 to turn it into an aggregate.
- AnyArgExpr(const Expr *Expression, unsigned ArgumentIndex)
- : Expression{Expression}, ArgumentIndex{ArgumentIndex} {}
const Expr *Expression;
unsigned ArgumentIndex;
};
-
-struct SourceArgExpr : AnyArgExpr {
- using AnyArgExpr::AnyArgExpr; // FIXME: Remove using in C++17.
-};
-
-struct DestinationArgExpr : AnyArgExpr {
- using AnyArgExpr::AnyArgExpr; // FIXME: Same.
-};
-
-struct SizeArgExpr : AnyArgExpr {
- using AnyArgExpr::AnyArgExpr; // FIXME: Same.
-};
+struct SourceArgExpr : AnyArgExpr {};
+struct DestinationArgExpr : AnyArgExpr {};
+struct SizeArgExpr : AnyArgExpr {};
using ErrorMessage = SmallString<128>;
enum class AccessKind { write, read };
@@ -1425,7 +1413,7 @@ void CStringChecker::evalMemmove(CheckerContext &C, const CallExpr *CE,
void CStringChecker::evalBcopy(CheckerContext &C, const CallExpr *CE) const {
// void bcopy(const void *src, void *dst, size_t n);
- SourceArgExpr Src(CE->getArg(0), 0);
+ SourceArgExpr Src{CE->getArg(0), 0};
DestinationArgExpr Dest = {CE->getArg(1), 1};
SizeArgExpr Size = {CE->getArg(2), 2};
More information about the cfe-commits
mailing list