diff --git a/bindings/pyroot_experimental/cppyy/cppyy-backend/clingwrapper/src/clingwrapper.cxx b/bindings/pyroot_experimental/cppyy/cppyy-backend/clingwrapper/src/clingwrapper.cxx
index 2ff753a8877ccd77e87bd9b56f8c5bfc15446599..03c3a2b62d0dd761b9d840b2f967a945cc1bb18f 100644
--- a/bindings/pyroot_experimental/cppyy/cppyy-backend/clingwrapper/src/clingwrapper.cxx
+++ b/bindings/pyroot_experimental/cppyy/cppyy-backend/clingwrapper/src/clingwrapper.cxx
@@ -309,7 +309,7 @@ std::string Cppyy::ResolveEnum(const std::string& enum_type)
     }
 
 // failed or anonymous ... signal upstream to special case this
-    std::string::size_type ipos = enum_type.size()-1;
+    int ipos = enum_type.size()-1;
     for (; 0 <= ipos; --ipos) {
         char c = enum_type[ipos];
         if (isspace(c)) continue;