From 36ecb00a991edd3197aac20dbb5dbb51ad6b00a3 Mon Sep 17 00:00:00 2001 From: zhaojunmeng Date: Tue, 2 Dec 2025 16:01:39 +0800 Subject: [PATCH] Fix ParseHeader() only reporting last file's error in non-unityBuildMode. --- src/CppParser/Parser.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/CppParser/Parser.cpp b/src/CppParser/Parser.cpp index 18d0cf94d..fd9a13833 100644 --- a/src/CppParser/Parser.cpp +++ b/src/CppParser/Parser.cpp @@ -5059,9 +5059,16 @@ ParserResult* ClangParser::ParseHeader(CppParserOptions* Opts) Parser parser(Opts); if (i < Headers.size() - 1) - delete parser.Parse({ Headers[i] }); + { + res = parser.Parse({ Headers[i] }); + if (res->kind != ParserResultKind::Success) + return res; + delete res; + } else + { res = parser.Parse({ Headers[i] }); + } } return res;