diff --git a/dune/tectonic/globalnonlinearity.hh b/dune/tectonic/globalnonlinearity.hh
index 7318a85b7b2fb5b8c418c4386041a1382b5ad375..5531162231a7f7038ccd6f92329bce9b61c639de 100644
--- a/dune/tectonic/globalnonlinearity.hh
+++ b/dune/tectonic/globalnonlinearity.hh
@@ -34,7 +34,7 @@ template <class Matrix, class Vector> class GlobalNonlinearity {
   /*
     Return a restriction of the outer function to the i'th node.
   */
-  virtual std::shared_ptr<LocalFriction<block_size>> restriction(size_t i)
+  std::shared_ptr<LocalFriction<block_size>> virtual restriction(size_t i)
       const = 0;
 
   void addHessian(Vector const &v, Matrix &hessian) const {
@@ -79,6 +79,6 @@ template <class Matrix, class Vector> class GlobalNonlinearity {
     return res->regularity(x);
   }
 
-  virtual void updateLogState(ScalarVector const &logState) = 0;
+  void virtual updateLogState(ScalarVector const &logState) = 0;
 };
 #endif
diff --git a/src/state/dieterichstateupdater.hh b/src/state/dieterichstateupdater.hh
index 13f2b62c917fafa191b1060f6e1b831d3378a943..cd28d97810b046077904047281df23ee5a788083 100644
--- a/src/state/dieterichstateupdater.hh
+++ b/src/state/dieterichstateupdater.hh
@@ -10,10 +10,10 @@ class DieterichStateUpdater : public StateUpdater<ScalarVector, Vector> {
   DieterichStateUpdater(ScalarVector _logState_initial,
                         Dune::BitSetVector<1> const &_nodes, double _L);
 
-  virtual void nextTimeStep();
-  virtual void setup(double _tau);
-  virtual void solve(Vector const &velocity_field);
-  virtual void extractLogState(ScalarVector &);
+  void virtual nextTimeStep();
+  void virtual setup(double _tau);
+  void virtual solve(Vector const &velocity_field);
+  void virtual extractLogState(ScalarVector &);
 
 private:
   ScalarVector logState_o;
diff --git a/src/state/ruinastateupdater.hh b/src/state/ruinastateupdater.hh
index ea39530edee9b89ff2462eb985cb91320da369f6..18604f991a105f8e5f871fc02a7f5c056e4f9be9 100644
--- a/src/state/ruinastateupdater.hh
+++ b/src/state/ruinastateupdater.hh
@@ -10,10 +10,10 @@ class RuinaStateUpdater : public StateUpdater<ScalarVector, Vector> {
   RuinaStateUpdater(ScalarVector _logState_initial,
                     Dune::BitSetVector<1> const &_nodes, double _L);
 
-  virtual void nextTimeStep();
-  virtual void setup(double _tau);
-  virtual void solve(Vector const &velocity_field);
-  virtual void extractLogState(ScalarVector &);
+  void virtual nextTimeStep();
+  void virtual setup(double _tau);
+  void virtual solve(Vector const &velocity_field);
+  void virtual extractLogState(ScalarVector &);
 
 private:
   ScalarVector logState_o;
diff --git a/src/state/stateupdater.hh b/src/state/stateupdater.hh
index bc7ed84da8d74c5b068211f8df3fd5d87138ca2a..9ff937564e9d63c4213adb021c71a48f51725c8b 100644
--- a/src/state/stateupdater.hh
+++ b/src/state/stateupdater.hh
@@ -3,10 +3,10 @@
 
 template <class ScalarVector, class Vector> class StateUpdater {
 public:
-  virtual void nextTimeStep() = 0;
-  virtual void setup(double _tau) = 0;
-  virtual void solve(Vector const &velocity_field) = 0;
-  virtual void extractLogState(ScalarVector &logState) = 0;
+  void virtual nextTimeStep() = 0;
+  void virtual setup(double _tau) = 0;
+  void virtual solve(Vector const &velocity_field) = 0;
+  void virtual extractLogState(ScalarVector &logState) = 0;
 };
 
 #endif