diff options
Diffstat (limited to 'dev-ros/pcl_ros/files/pcl.patch')
-rw-r--r-- | dev-ros/pcl_ros/files/pcl.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/dev-ros/pcl_ros/files/pcl.patch b/dev-ros/pcl_ros/files/pcl.patch new file mode 100644 index 000000000000..6847fff9c4ce --- /dev/null +++ b/dev-ros/pcl_ros/files/pcl.patch @@ -0,0 +1,51 @@ +From bd21be2cb8ec6ad70a282c61b14aa9dd43edf9ff Mon Sep 17 00:00:00 2001 +From: Markus Vieth <39675748+mvieth@users.noreply.github.com> +Date: Mon, 21 Jun 2021 19:42:58 +0200 +Subject: [PATCH] Use complete namespace for traits members (#330) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This prevents errors like this: error: ‘name’ is not a member of ‘pcl::detail::traits’; did you mean ‘pcl::traits::name’? +The error appears for newer PCL versions (everything after commit https://github.com/PointCloudLibrary/pcl/commit/d39d3d3300746b952997e5bd2742dac7482aa5ab), but this change should also be fully compatible with older PCL versions. +--- + pcl_ros/include/pcl_ros/point_cloud.h | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/include/pcl_ros/point_cloud.h b/pcl_ros/include/pcl_ros/point_cloud.h +index 93df7365..3c57f298 100644 +--- a/include/pcl_ros/point_cloud.h ++++ b/include/pcl_ros/point_cloud.h +@@ -23,19 +23,19 @@ namespace pcl + + template<typename U> void operator() () + { +- const char* name = traits::name<PointT, U>::value; ++ const char* name = pcl::traits::name<PointT, U>::value; + std::uint32_t name_length = strlen(name); + stream_.next(name_length); + if (name_length > 0) + memcpy(stream_.advance(name_length), name, name_length); + +- std::uint32_t offset = traits::offset<PointT, U>::value; ++ std::uint32_t offset = pcl::traits::offset<PointT, U>::value; + stream_.next(offset); + +- std::uint8_t datatype = traits::datatype<PointT, U>::value; ++ std::uint8_t datatype = pcl::traits::datatype<PointT, U>::value; + stream_.next(datatype); + +- std::uint32_t count = traits::datatype<PointT, U>::size; ++ std::uint32_t count = pcl::traits::datatype<PointT, U>::size; + stream_.next(count); + } + +@@ -49,7 +49,7 @@ namespace pcl + + template<typename U> void operator() () + { +- std::uint32_t name_length = strlen(traits::name<PointT, U>::value); ++ std::uint32_t name_length = strlen(pcl::traits::name<PointT, U>::value); + length += name_length + 13; + } + |