From 10b267c58bc967bb37b7e2dde4fc9d913fe3f8cc Mon Sep 17 00:00:00 2001
From: Felix Schindler <felix.schindler@wwu.de>
Date: Thu, 3 Dec 2020 17:28:15 +0100
Subject: [PATCH] [...numerical-fluxes.upwind] fix factories

---
 dune/gdt/local/numerical-fluxes/upwind.hh | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/dune/gdt/local/numerical-fluxes/upwind.hh b/dune/gdt/local/numerical-fluxes/upwind.hh
index 841933b92..9b026cee7 100644
--- a/dune/gdt/local/numerical-fluxes/upwind.hh
+++ b/dune/gdt/local/numerical-fluxes/upwind.hh
@@ -80,15 +80,18 @@ private:
 }; // class NumericalUpwindFlux
 
 
-template <class I, size_t d, size_t m, class R>
-NumericalUpwindFlux<I, d, m, R>
-make_numerical_upwind_flux(const XT::Functions::FluxFunctionInterface<I, m, d, m, R>& flux)
+template <class E, size_t d, size_t m, class R>
+auto make_numerical_upwind_flux(const XT::Functions::FluxFunctionInterface<E, m, d, m, R>& flux)
 {
+  using I = XT::Grid::extract_entity_t<E>;
   return NumericalUpwindFlux<I, d, m, R>(flux);
 }
 
-template <class I, size_t d, size_t m, class R>
-NumericalUpwindFlux<I, d, m, R> make_numerical_upwind_flux(const XT::Functions::FunctionInterface<m, d, m, R>& flux)
+template <class I, // <- has to be specified manually
+          size_t d,
+          size_t m,
+          class R>
+auto make_numerical_upwind_flux(const XT::Functions::FunctionInterface<m, d, m, R>& flux)
 {
   return NumericalUpwindFlux<I, d, m, R>(flux);
 }
-- 
GitLab