diff --git a/include/tadah/models/memory/IModelsWorkspaceManager.h b/include/tadah/models/memory/IModelsWorkspaceManager.h
index 2be8923149dd0b26ec794e8db7f4c1a507af008e..a62102128c3efe9c8375d27239f4a552186dea70 100644
--- a/include/tadah/models/memory/IModelsWorkspaceManager.h
+++ b/include/tadah/models/memory/IModelsWorkspaceManager.h
@@ -18,7 +18,7 @@ class SVDWorkspace; ///< Forward declaration of SVDWorkspace
  * Extends the core IWorkspaceManager interface and provides methods for
  * obtaining and releasing OLS and SVD workspaces.
  */
-class IModelsWorkspaceManager : public tadah::core::memory::IWorkspaceManager {
+class IModelsWorkspaceManager : public virtual tadah::core::memory::IWorkspaceManager {
 public:
     /**
      * @brief Virtual destructor.
diff --git a/include/tadah/models/memory/ModelsWorkspaceManager.h b/include/tadah/models/memory/ModelsWorkspaceManager.h
index 9e38ea4d7c947213cf8666861bec176d2c5ff141..c878b3201d6ad076390e5d8e7c90705da35b4727 100644
--- a/include/tadah/models/memory/ModelsWorkspaceManager.h
+++ b/include/tadah/models/memory/ModelsWorkspaceManager.h
@@ -14,7 +14,7 @@ namespace memory {
  *
  * Manages OLS and SVD workspaces, providing methods to obtain and release them.
  */
-class ModelsWorkspaceManager : public IModelsWorkspaceManager {
+class ModelsWorkspaceManager : public virtual IModelsWorkspaceManager {
 public:
     /**
      * @brief Constructor.