[clang] [clang][ssaf] Implement JSONFormat (PR #180021)

Balázs Benics via cfe-commits cfe-commits at lists.llvm.org
Mon Feb 16 06:45:52 PST 2026


================
@@ -18,27 +18,33 @@
 #include "clang/Analysis/Scalable/Model/SummaryName.h"
 #include "clang/Analysis/Scalable/TUSummary/TUSummary.h"
 #include "llvm/ADT/StringRef.h"
+#include "llvm/Support/Error.h"
 
 namespace clang::ssaf {
 
 class EntityId;
 class EntityIdTable;
 class EntityName;
 class EntitySummary;
+class SummaryName;
+class TUSummary;
 
 /// Abstract base class for serialization formats.
 class SerializationFormat {
 public:
   virtual ~SerializationFormat() = default;
 
-  virtual TUSummary readTUSummary(llvm::StringRef Path) = 0;
+  virtual llvm::Expected<TUSummary> readTUSummary(llvm::StringRef Path) = 0;
 
-  virtual void writeTUSummary(const TUSummary &Summary,
-                              llvm::StringRef OutputDir) = 0;
+  virtual llvm::Error writeTUSummary(const TUSummary &Summary,
+                                     llvm::StringRef Path) = 0;
----------------
steakhal wrote:

Now that you renamed this `Path` parameter, could you go back to all the overriders and rename their parameters too, to remain consistent?

https://github.com/llvm/llvm-project/pull/180021


More information about the cfe-commits mailing list