IVGCVSW-8159 Fixed issues building with NDK r26
* The compiler shipped with NDK r26 has stricter rules around certain
warnings and deprecation notices.
* Fixed warnings for unqualified call to 'std::move'
* Fixed error where the half values weren't being cast to a float
when calling 'std::nan'
* Removed unnecessary subtensor unit tests for neon
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I4ceb46e55ff5f2a754452e3a43de2188d58bf927
diff --git a/include/armnn/utility/TransformIterator.hpp b/include/armnn/utility/TransformIterator.hpp
index b038447..e37c8a7 100644
--- a/include/armnn/utility/TransformIterator.hpp
+++ b/include/armnn/utility/TransformIterator.hpp
@@ -8,7 +8,6 @@
namespace armnn
{
-
template<typename Function,
typename Iterator,
typename Category = typename std::iterator_traits<Iterator>::iterator_category,
@@ -16,7 +15,7 @@
typename Distance = typename std::iterator_traits<Iterator>::difference_type,
typename Pointer = typename std::iterator_traits<Iterator>::pointer,
typename Reference =
- typename std::result_of<const Function(typename std::iterator_traits<Iterator>::reference)>::type
+ typename std::invoke_result<const Function, typename std::iterator_traits<Iterator>::reference>::type
>
class TransformIterator
{
@@ -73,7 +72,7 @@
bool operator<=(const TransformIterator& rhs) const {return m_it <= rhs.m_it;}
bool operator==(TransformIterator other) const {return (m_it == other.m_it);}
- bool operator!=(TransformIterator other) const {return !(m_it == other.m_it);}
+ bool operator!=(TransformIterator other) const {return (m_it != other.m_it);}
Reference operator*() const {return m_fn(*m_it);}
diff --git a/include/armnnTestUtils/TensorHelpers.hpp b/include/armnnTestUtils/TensorHelpers.hpp
index fa9c970..14c5061 100644
--- a/include/armnnTestUtils/TensorHelpers.hpp
+++ b/include/armnnTestUtils/TensorHelpers.hpp
@@ -47,7 +47,7 @@
return true;
}
- if (std::isnan(a) && std::isnan(b))
+ if (std::isnan(static_cast<float>(a)) && std::isnan(static_cast<float>(b)))
{
return true;
}