From b4770039e39a2df14cb93bee30bda335282c61a8 Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Tue, 4 Sep 2018 23:21:01 +0200
Subject: [PATCH] Fix g++ build

---
 src/mesh/IConnectivity.hpp | 56 +++++++++++++++++++-------------------
 src/mesh/ValuePerItem.hpp  | 16 +----------
 2 files changed, 29 insertions(+), 43 deletions(-)

diff --git a/src/mesh/IConnectivity.hpp b/src/mesh/IConnectivity.hpp
index b9da32e8d..27ae9fa81 100644
--- a/src/mesh/IConnectivity.hpp
+++ b/src/mesh/IConnectivity.hpp
@@ -18,37 +18,37 @@ struct IConnectivity
   template <ItemType item_type>
   size_t numberOf() const = delete;
 
-  template <>
-  KOKKOS_INLINE_FUNCTION
-  size_t numberOf<ItemType::node>() const
-  {
-    return this->numberOfNodes();
-  }
-
-  template <>
-  KOKKOS_INLINE_FUNCTION
-  size_t numberOf<ItemType::edge>() const
-  {
-    return this->numberOfEdges();
-  }
-
-  template <>
-  KOKKOS_INLINE_FUNCTION
-  size_t numberOf<ItemType::face>() const
-  {
-    return this->numberOfFaces();
-  }
-
-  template <>
-  KOKKOS_INLINE_FUNCTION
-  size_t numberOf<ItemType::cell>() const
-  {
-    return this->numberOfCells();
-  }
-
   IConnectivity() = default;
   IConnectivity(const IConnectivity&) = delete;
   ~IConnectivity() = default;
 };
 
+template <>
+KOKKOS_INLINE_FUNCTION
+size_t IConnectivity::numberOf<ItemType::node>() const
+{
+  return this->numberOfNodes();
+}
+
+template <>
+KOKKOS_INLINE_FUNCTION
+size_t IConnectivity::numberOf<ItemType::edge>() const
+{
+  return this->numberOfEdges();
+}
+
+template <>
+KOKKOS_INLINE_FUNCTION
+size_t IConnectivity::numberOf<ItemType::face>() const
+{
+  return this->numberOfFaces();
+}
+
+template <>
+KOKKOS_INLINE_FUNCTION
+size_t IConnectivity::numberOf<ItemType::cell>() const
+{
+  return this->numberOfCells();
+}
+
 #endif // ICONNECTIVITY_HPP
diff --git a/src/mesh/ValuePerItem.hpp b/src/mesh/ValuePerItem.hpp
index 93efce254..98796c2bf 100644
--- a/src/mesh/ValuePerItem.hpp
+++ b/src/mesh/ValuePerItem.hpp
@@ -29,13 +29,6 @@ class ValuePerItem
     return m_is_built;
   }
 
-  KOKKOS_FORCEINLINE_FUNCTION
-  DataType& operator()(const size_t& j)
-  {
-    Assert(m_is_built);
-    return m_values(j);
-  }
-
   // Following Kokkos logic, these classes are view and const view does allow
   // changes in data
   KOKKOS_FORCEINLINE_FUNCTION
@@ -52,17 +45,10 @@ class ValuePerItem
     return m_values.extent(0);
   }
 
-  KOKKOS_FORCEINLINE_FUNCTION
-  DataType& operator[](const size_t& i)
-  {
-    Assert(m_is_built);
-    return m_values[i];
-  }
-
   // Following Kokkos logic, these classes are view and const view does allow
   // changes in data
   KOKKOS_FORCEINLINE_FUNCTION
-  DataType& operator[](const size_t & i) const
+  DataType& operator[](const size_t& i) const
   {
     Assert(m_is_built);
     return m_values[i];
-- 
GitLab