Author: smanna12 Date: 2024-09-20T12:08:05-05:00 New Revision: efb583178d74b2174e8b9660b67ba7295527b09f
URL: https://github.com/llvm/llvm-project/commit/efb583178d74b2174e8b9660b67ba7295527b09f DIFF: https://github.com/llvm/llvm-project/commit/efb583178d74b2174e8b9660b67ba7295527b09f.diff LOG: [Clang] Prevent Copying of LateParsedClass Instances (#109428) Class clang::Parser::LateParsedClass owns resources that are freed in its destructor but has no user-written assignment operator. This commit explicitly deletes the copy constructor and copy assignment operator for the LateParsedClass. Added: Modified: clang/include/clang/Parse/Parser.h Removed: ################################################################################ diff --git a/clang/include/clang/Parse/Parser.h b/clang/include/clang/Parse/Parser.h index 47f72135c97cff..eb8a851da7e04e 100644 --- a/clang/include/clang/Parse/Parser.h +++ b/clang/include/clang/Parse/Parser.h @@ -1355,6 +1355,10 @@ class Parser : public CodeCompletionHandler { void ParseLexedAttributes() override; void ParseLexedPragmas() override; + // Delete copy constructor and copy assignment operator. + LateParsedClass(const LateParsedClass &) = delete; + LateParsedClass &operator=(const LateParsedClass &) = delete; + private: Parser *Self; ParsingClass *Class; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits