highfive/0001-fix-32bit-arches-use-e...

85 lines
3.8 KiB
Diff

From d4ae490aaa5f8f3a8a7c4986cfc1e55621789354 Mon Sep 17 00:00:00 2001
From: "Ankur Sinha (Ankur Sinha Gmail)" <sanjay.ankur@gmail.com>
Date: Thu, 29 Apr 2021 09:00:16 +0100
Subject: [PATCH] fix(32bit arches): use explicit casts
Explicitly casts long long unsigned int to size_t
Fixes https://github.com/BlueBrain/HighFive/issues/443
---
include/highfive/bits/H5Attribute_misc.hpp | 2 +-
include/highfive/bits/H5File_misc.hpp | 2 +-
include/highfive/bits/H5Node_traits_misc.hpp | 2 +-
include/highfive/bits/H5Path_traits_misc.hpp | 2 +-
include/highfive/bits/H5Reference_misc.hpp | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/include/highfive/bits/H5Attribute_misc.hpp b/include/highfive/bits/H5Attribute_misc.hpp
index 63ae5f3..9e4ffe4 100644
--- a/include/highfive/bits/H5Attribute_misc.hpp
+++ b/include/highfive/bits/H5Attribute_misc.hpp
@@ -30,7 +30,7 @@ namespace HighFive {
inline std::string Attribute::getName() const {
return details::get_name([&](char *buffer, hsize_t length) {
- return H5Aget_name(_hid, length, buffer);
+ return H5Aget_name(_hid, static_cast<size_t>(length), buffer);
});
}
diff --git a/include/highfive/bits/H5File_misc.hpp b/include/highfive/bits/H5File_misc.hpp
index 304205a..ee8293c 100644
--- a/include/highfive/bits/H5File_misc.hpp
+++ b/include/highfive/bits/H5File_misc.hpp
@@ -78,7 +78,7 @@ inline File::File(const std::string& filename, unsigned openFlags,
inline const std::string& File::getName() const noexcept {
if (_filename.empty()) {
_filename = details::get_name([this](char* buffer, hsize_t length) {
- return H5Fget_name(getId(), buffer, length);
+ return H5Fget_name(getId(), buffer, static_cast<size_t>(length));
});
}
return _filename;
diff --git a/include/highfive/bits/H5Node_traits_misc.hpp b/include/highfive/bits/H5Node_traits_misc.hpp
index a34067c..859cefd 100644
--- a/include/highfive/bits/H5Node_traits_misc.hpp
+++ b/include/highfive/bits/H5Node_traits_misc.hpp
@@ -149,7 +149,7 @@ inline std::string NodeTraits<Derivate>::getObjectName(size_t index) const {
return details::get_name([&](char* buffer, hsize_t length) {
return H5Lget_name_by_idx(
static_cast<const Derivate*>(this)->getId(), ".", H5_INDEX_NAME, H5_ITER_INC,
- index, buffer, length, H5P_DEFAULT);
+ index, buffer, static_cast<size_t>(length), H5P_DEFAULT);
});
}
diff --git a/include/highfive/bits/H5Path_traits_misc.hpp b/include/highfive/bits/H5Path_traits_misc.hpp
index 75617a1..b59f99a 100644
--- a/include/highfive/bits/H5Path_traits_misc.hpp
+++ b/include/highfive/bits/H5Path_traits_misc.hpp
@@ -36,7 +36,7 @@ inline PathTraits<Derivate>::PathTraits() {
template <typename Derivate>
inline std::string PathTraits<Derivate>::getPath() const {
return details::get_name([this](char* buffer, hsize_t length) {
- return H5Iget_name(static_cast<const Derivate*>(this)->getId(), buffer, length);
+ return H5Iget_name(static_cast<const Derivate*>(this)->getId(), buffer, static_cast<size_t>(length));
});
}
diff --git a/include/highfive/bits/H5Reference_misc.hpp b/include/highfive/bits/H5Reference_misc.hpp
index b4aea3e..7486bb8 100644
--- a/include/highfive/bits/H5Reference_misc.hpp
+++ b/include/highfive/bits/H5Reference_misc.hpp
@@ -20,7 +20,7 @@ namespace HighFive {
inline Reference::Reference(const Object& location, const Object& object)
: parent_id(location.getId()) {
obj_name = details::get_name([&](char *buffer, hsize_t length) {
- return H5Iget_name(object.getId(), buffer, length); });
+ return H5Iget_name(object.getId(), buffer, static_cast<size_t>(length)); });
}
inline void Reference::create_ref(hobj_ref_t* refptr) const {
--
2.31.1