diff --git a/src/timestepping.hh b/src/timestepping.hh
index 3146d10cc9d140eeae962188776857d70f7ce418..0d417727babaeecd2243ab0551b43463ecb232c2 100644
--- a/src/timestepping.hh
+++ b/src/timestepping.hh
@@ -14,7 +14,7 @@ class TimeSteppingScheme {
   void virtual extractDisplacement(VectorType &displacement) const = 0;
   void virtual extractVelocity(VectorType &velocity) const = 0;
 
-  virtual TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> *
+  TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> virtual *
   clone() = 0;
 };
 
@@ -34,7 +34,7 @@ class ImplicitEuler
   void virtual extractDisplacement(VectorType &) const override;
   void virtual extractVelocity(VectorType &) const override;
 
-  virtual TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> *clone()
+  TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> virtual *clone()
       override;
 
 private:
@@ -69,7 +69,7 @@ class Newmark
   void virtual extractDisplacement(VectorType &) const override;
   void virtual extractVelocity(VectorType &) const override;
 
-  virtual TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> *clone()
+  TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> virtual *clone()
       override;
 
 private:
@@ -106,7 +106,7 @@ class EulerPair
   void virtual extractDisplacement(VectorType &) const override;
   void virtual extractVelocity(VectorType &) const override;
 
-  virtual TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> *clone()
+  TimeSteppingScheme<VectorType, MatrixType, FunctionType, dim> virtual *clone()
       override;
 
 private: