From a2f83b6efeff2932fcc371eddc63379c0b957e31 Mon Sep 17 00:00:00 2001
From: Ian Bell <ian.bell@nist.gov>
Date: Thu, 26 Aug 2021 19:29:24 -0400
Subject: [PATCH] Maybe this is how you do the references?

See https://en.cppreference.com/w/cpp/types/result_of
---
 interface/multifluid_mutant.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/interface/multifluid_mutant.cpp b/interface/multifluid_mutant.cpp
index 74c45b0..b878b14 100644
--- a/interface/multifluid_mutant.cpp
+++ b/interface/multifluid_mutant.cpp
@@ -38,7 +38,7 @@ void add_multifluid_mutant_invariant(py::module& m) {
     m.def("build_multifluid_mutant_invariant", &build_multifluid_mutant_invariant<MultiFluid>);
 
     // Typedef for mutant with the invariant reducing function
-    using Mutant = std::invoke_result_t<decltype(build_multifluid_mutant_invariant<MultiFluid>), std::ref(MultiFluid), std::ref(nlohmann::json)>;
+    using Mutant = std::invoke_result_t<decltype(build_multifluid_mutant_invariant<MultiFluid>), MultiFluid&, nlohmann::json&>;
 
     // Define python wrapper of the mutant class
     auto wMutant = py::class_<Mutant>(m, "MultiFluidMutantInvariant")
-- 
GitLab