diff --git a/exercises/solution/exercise-fractures/matrixproblem.hh b/exercises/solution/exercise-fractures/matrixproblem.hh
index 9eff129ba08c2fe30f200b3e33b57856fd67b957..0c91909a1ae09048dd6b27812878fe1acdef33c9 100644
--- a/exercises/solution/exercise-fractures/matrixproblem.hh
+++ b/exercises/solution/exercise-fractures/matrixproblem.hh
@@ -198,8 +198,8 @@ public:
             // we need to obtain the domain marker of the fracture element that is coupled to this face
             // therefore we first get the fracture problem from the coupling manager. For this test, we
             // know that the fracture domain id is 1 (see main file)
-            static constexpr std::size_t fractureDomainId = 1;
-            const auto& fractureProblem = couplingManager().template problem<fractureDomainId>();
+            static constexpr auto fractureDomainId = Dune::index_constant<1>();
+            const auto& fractureProblem = couplingManager().problem(fractureDomainId);
 
             // use helper function in coupling manager to obtain the element this face couples to
             const auto fractureElement = couplingManager().getLowDimElement(element, scvf);