[clang] Optimize -Wunsafe-buffer-usage. (PR #124554)
Ilya Biryukov via cfe-commits
cfe-commits at lists.llvm.org
Mon Jan 27 09:17:56 PST 2025
================
@@ -79,21 +81,39 @@ static std::string getDREAncestorString(const DeclRefExpr *DRE,
} // namespace
#endif /* NDEBUG */
-namespace clang::ast_matchers {
+class CustomMatcher {
+public:
+ virtual bool matches(const DynTypedNode &DynNode, ASTContext &Ctx,
+ const UnsafeBufferUsageHandler &Handler) = 0;
+ virtual ~CustomMatcher() = default;
+};
+
+struct MatchResult {
+public:
+ std::map<std::string, DynTypedNode>
----------------
ilya-biryukov wrote:
NIT: Use `llvm::StringMap` for better performance and more idiomatic code.
NIT2: `llvm::SmallDenseMap` might be a little more involved, but may result in even better performance. I would probably still recommend starting with `StringMap` first and only going to the other one if/when someone proves it's useful with a benchmark.
https://github.com/llvm/llvm-project/pull/124554
More information about the cfe-commits
mailing list