From 724aaeafed61803dfeb505bb553fa7f2bbaf8bc3 Mon Sep 17 00:00:00 2001
From: Ansgar Burchardt <Ansgar.Burchardt@tu-dresden.de>
Date: Tue, 25 Jul 2017 14:19:20 +0200
Subject: [PATCH] use mutable lambda in wrapper

This allows passing in mutable lambda expressions or other function
objects having a non-`const` `operator()`.
---
 dune/solvers/solvers/criterion.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dune/solvers/solvers/criterion.hh b/dune/solvers/solvers/criterion.hh
index ff1c473a..259f8f2b 100644
--- a/dune/solvers/solvers/criterion.hh
+++ b/dune/solvers/solvers/criterion.hh
@@ -78,7 +78,7 @@ namespace Dune {
       template<class F,
         std::enable_if_t<std::is_convertible<std::result_of_t<F()>, std::string>::value, int> = 0>
       Criterion(F&& f, const std::string& header) :
-        f_( [=]() {return std::make_tuple(false, f());} ),
+        f_( [=]() mutable {return std::make_tuple(false, f());} ),
         header_(header)
       {}
 
-- 
GitLab