From cb63fa00d1f723e3b4e2fb5e6645595eb0a6e84c Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Wed, 26 Jul 2023 08:40:35 -0700 Subject: [PATCH] [NFC][clang] Fix static analyzer concerns TypeLocBuilder frees resources in the destructor but doesn't have user-written copy c'tor or assignment operator, so copying it using default ones can cause double free. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D156222 --- clang/lib/Sema/TypeLocBuilder.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/clang/lib/Sema/TypeLocBuilder.h b/clang/lib/Sema/TypeLocBuilder.h index d413d74b74ff..15eb2226cdf7 100644 --- a/clang/lib/Sema/TypeLocBuilder.h +++ b/clang/lib/Sema/TypeLocBuilder.h @@ -53,6 +53,9 @@ public: delete[] Buffer; } + TypeLocBuilder(const TypeLocBuilder &) = delete; + TypeLocBuilder &operator=(const TypeLocBuilder &) = delete; + /// Ensures that this buffer has at least as much capacity as described. void reserve(size_t Requested) { if (Requested > Capacity)