Fznamznon created this revision. Herald added subscribers: manas, ASDenysPetrov, dkrupp, donat.nagy, Szelethus, a.sidorin, baloghadamsoftware. Herald added a project: All. Fznamznon requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits.
DelegatingDeserializationListener 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. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D156405 Files: clang/lib/Frontend/FrontendAction.cpp Index: clang/lib/Frontend/FrontendAction.cpp =================================================================== --- clang/lib/Frontend/FrontendAction.cpp +++ clang/lib/Frontend/FrontendAction.cpp @@ -61,6 +61,11 @@ delete Previous; } + DelegatingDeserializationListener(const DelegatingDeserializationListener &) = + delete; + DelegatingDeserializationListener & + operator=(const DelegatingDeserializationListener &) = delete; + void ReaderInitialized(ASTReader *Reader) override { if (Previous) Previous->ReaderInitialized(Reader);
Index: clang/lib/Frontend/FrontendAction.cpp =================================================================== --- clang/lib/Frontend/FrontendAction.cpp +++ clang/lib/Frontend/FrontendAction.cpp @@ -61,6 +61,11 @@ delete Previous; } + DelegatingDeserializationListener(const DelegatingDeserializationListener &) = + delete; + DelegatingDeserializationListener & + operator=(const DelegatingDeserializationListener &) = delete; + void ReaderInitialized(ASTReader *Reader) override { if (Previous) Previous->ReaderInitialized(Reader);
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits