From 8103ae6340e033b5f05754cab29bb761aa1e3963 Mon Sep 17 00:00:00 2001
From: Adrien Beraud <adrien.beraud@savoirfairelinux.com>
Date: Sun, 8 Jan 2023 13:57:20 -0500
Subject: [PATCH] EnumClass: fix warning

Change-Id: I691a69db206103821187b8d8f76459e046ac9b9f
---
 src/enumclass_utils.h | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/src/enumclass_utils.h b/src/enumclass_utils.h
index 9c88a4d053..cbd39b6048 100644
--- a/src/enumclass_utils.h
+++ b/src/enumclass_utils.h
@@ -17,11 +17,11 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.
  */
-#ifndef ENUM_CLASS_UTILS_H
-#define ENUM_CLASS_UTILS_H
+#pragma once
 
-#include <map>
 #include "logger.h"
+
+#include <map>
 #include <type_traits>
 #include <vector>
 #include <cassert>
@@ -30,10 +30,9 @@ namespace jami {
 
 /**
  * This function adds a safe way to get an enum class size
- * @note it cannot be unsigned to avoid some compiler warnings
  */
 template<typename A>
-constexpr inline int
+constexpr inline size_t
 enum_class_size()
 {
     return size_t(A::COUNT__);
@@ -65,7 +64,7 @@ struct Matrix1D
     class EnumClassIter
     {
     public:
-        EnumClassIter(const Matrix1D<Row, Value, A>* p_vec, int pos)
+        EnumClassIter(const Matrix1D<Row, Value, A>* p_vec, size_t pos)
             : pos_(pos)
             , p_vec_(p_vec)
         {}
@@ -75,7 +74,7 @@ struct Matrix1D
         const EnumClassIter& operator++();
 
     private:
-        int pos_;
+        size_t pos_;
         const Matrix1D<Row, Value, A>* p_vec_;
     };
 
@@ -112,7 +111,7 @@ struct Matrix0D
     class EnumClassIter
     {
     public:
-        EnumClassIter(const Matrix0D<EnumClass>* p_vec, int pos)
+        EnumClassIter(const Matrix0D<EnumClass>* p_vec, size_t pos)
             : pos_(pos)
             , p_vec_(p_vec)
         {}
@@ -122,7 +121,7 @@ struct Matrix0D
         const EnumClassIter& operator++();
 
     private:
-        int pos_;
+        size_t pos_;
         const Matrix0D<EnumClass>* p_vec_;
     };
 
@@ -308,5 +307,3 @@ Matrix1D<Row, Value, Accessor>::end()
 }
 
 } // namespace jami
-
-#endif // ENUM_CLASS_UTILS_H
-- 
GitLab