================
@@ -861,9 +864,13 @@ class CompilerInstance : public ModuleLoader {
   ///
   /// Explicitly-specified \c VFS takes precedence over the VFS of this 
instance
   /// when creating the clone and also prevents \c FileManager sharing.
-  std::unique_ptr<CompilerInstance> cloneForModuleCompile(
-      SourceLocation ImportLoc, Module *Module, StringRef ModuleFileName,
-      IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS = nullptr);
+  /// Explicitly-specified \c DiagConsumer takes precedence over forwarding to
+  /// this instance.
+  std::unique_ptr<CompilerInstance>
+  cloneForModuleCompile(SourceLocation ImportLoc, Module *Module,
+                        StringRef ModuleFileName,
+                        IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS = 
nullptr,
+                        DiagnosticConsumer *DiagConsumer = nullptr);
----------------
jansvoboda11 wrote:

I think it makes sense, since they are fairly orthogonal. On the other hand, I 
don't have an actual use for that. Maybe I can package both of these into a 
simple struct (`ThreadSafetyConfig`?) and pass that in `std::optional`. That'd 
make things much more explicit than just asserts. WDYT?

https://github.com/llvm/llvm-project/pull/136601
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to