[clang] [Modules] Enrich diags for out of date module dependencies (PR #190203)

Qiongsi Wu via cfe-commits cfe-commits at lists.llvm.org
Thu Apr 9 13:23:45 PDT 2026


================
@@ -42,6 +42,58 @@ class PCHContainerReader;
 
 namespace serialization {
 
+/// The result of attempting to add a new module.
+class AddModuleResult {
+public:
+  enum Kind {
+    /// The module file had already been loaded.
+    AlreadyLoaded,
+    /// The module file was just loaded in response to this call.
+    NewlyLoaded,
+    /// The module file is missing.
+    Missing,
+    /// The module file is out-of-date.
+    OutOfDate
+  };
+  Kind K;
----------------
qiongsiwu wrote:

Nit: Do we need to worry about `K` being uninitialized by default? I can see that we don't have a good default initialization choice from `Kind`'s enumerators. If we need, maybe we can add something like `Unknown = 0` at the top and default initialize `K` to `Unknown`? 

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


More information about the cfe-commits mailing list