diff --git a/Param/Base/IParametric.cpp b/Param/Base/IParametric.cpp
deleted file mode 100644
index ead7233baad2c7836cfc20518e4a0c428c07d883..0000000000000000000000000000000000000000
--- a/Param/Base/IParametric.cpp
+++ /dev/null
@@ -1,19 +0,0 @@
-//  ************************************************************************************************
-//
-//  BornAgain: simulate and fit reflection and scattering
-//
-//! @file      Param/Base/IParametric.cpp
-//! @brief     Implements interface IParametric.
-//!
-//! @homepage  http://www.bornagainproject.org
-//! @license   GNU General Public License v3 or higher (see COPYING)
-//! @copyright Forschungszentrum Jülich GmbH 2018
-//! @authors   Scientific Computing Group at MLZ (see CITATION, AUTHORS)
-//
-//  ************************************************************************************************
-
-#include "Param/Base/IParametric.h"
-
-IParametric::IParametric(const std::string& name) : m_name{name} {}
-
-IParametric::~IParametric() = default;
diff --git a/Param/Base/IParametric.h b/Param/Base/IParametric.h
index 9a2287cf50c0673ab11667bf4a0c8ea70b93ff34..732dd884684afa39c37dc29f40beba8861802d30 100644
--- a/Param/Base/IParametric.h
+++ b/Param/Base/IParametric.h
@@ -25,8 +25,8 @@ class RealLimits;
 
 class IParametric {
 public:
-    IParametric(const std::string& name = "");
-    virtual ~IParametric();
+    IParametric(const std::string& name = "") : m_name{name} {}
+    virtual ~IParametric() = default;
 
     IParametric& operator=(const IParametric& other) = delete;
 
diff --git a/auto/Wrap/doxygenParam.i b/auto/Wrap/doxygenParam.i
index d56c52002c6f98a9206a3de947aa95c6ca0e9e8a..df5686ca4bf435c0773182499b3111d0e054674e 100644
--- a/auto/Wrap/doxygenParam.i
+++ b/auto/Wrap/doxygenParam.i
@@ -883,7 +883,7 @@ C++ includes: IParametric.h
 %feature("docstring")  IParametric::IParametric "IParametric::IParametric(const std::string &name=\"\")
 ";
 
-%feature("docstring")  IParametric::~IParametric "IParametric::~IParametric()
+%feature("docstring")  IParametric::~IParametric "virtual IParametric::~IParametric()=default
 ";
 
 %feature("docstring")  IParametric::getName "const std::string& IParametric::getName() const
@@ -1199,10 +1199,10 @@ Returns distribution name for python-formatted text.
 ";
 
 
-// File: namespace_0d4.xml
+// File: namespace_0d3.xml
 
 
-// File: namespace_0d9.xml
+// File: namespace_0d8.xml
 
 
 // File: namespaceNodeUtils.xml
@@ -1212,9 +1212,6 @@ Returns a vector of triples (descendant, depth, parent)
 ";
 
 
-// File: IParametric_8cpp.xml
-
-
 // File: IParametric_8h.xml
 
 
diff --git a/auto/Wrap/libBornAgainParam_wrap.cpp b/auto/Wrap/libBornAgainParam_wrap.cpp
index cdeb9bd08939d89d45d93c045f4f5b7186ccf025..47e4a01c8c224f8f9b86225ed63bd08376b1dbea 100644
--- a/auto/Wrap/libBornAgainParam_wrap.cpp
+++ b/auto/Wrap/libBornAgainParam_wrap.cpp
@@ -42675,7 +42675,7 @@ static PyMethodDef SwigMethods[] = {
 		""},
 	 { "delete_IParametric", _wrap_delete_IParametric, METH_O, "\n"
 		"delete_IParametric(IParametric self)\n"
-		"IParametric::~IParametric()\n"
+		"virtual IParametric::~IParametric()=default\n"
 		"\n"
 		""},
 	 { "IParametric_getName", _wrap_IParametric_getName, METH_O, "\n"