================ @@ -85,19 +85,20 @@ class PrerequisiteModules { /// different versions and different source files. class ModulesBuilder { public: - ModulesBuilder(const GlobalCompilationDatabase &CDB) : CDB(CDB) {} + ModulesBuilder() = default; + virtual ~ModulesBuilder() = default; ModulesBuilder(const ModulesBuilder &) = delete; ModulesBuilder(ModulesBuilder &&) = delete; ModulesBuilder &operator=(const ModulesBuilder &) = delete; ModulesBuilder &operator=(ModulesBuilder &&) = delete; - std::unique_ptr<PrerequisiteModules> - buildPrerequisiteModulesFor(PathRef File, const ThreadsafeFS &TFS) const; + virtual std::unique_ptr<PrerequisiteModules> ---------------- kadircet wrote:
not sure why we need to make this an abstract base class, instead of concretely implementing the functionality here. we're only using the caching version of `ModulesBuilder` in actual code & tests anyway. https://github.com/llvm/llvm-project/pull/106683 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits