diff --git a/include/etl/limits.h b/include/etl/limits.h index c032af86..996e69f5 100644 --- a/include/etl/limits.h +++ b/include/etl/limits.h @@ -36,7 +36,7 @@ SOFTWARE. #include "char_traits.h" #include "integral_limits.h" -#if ETL_NOT_USING_STL && defined(ETL_COMPILER_ARM5) +#if ETL_NOT_USING_STL && defined(ETL_COMPILER_ARM5) && !defined(__USE_C99_MATH) // Required for nan, nanf, nanl #define __USE_C99_MATH #endif diff --git a/include/etl/type_traits.h b/include/etl/type_traits.h index 3757f6b7..e2e5023b 100644 --- a/include/etl/type_traits.h +++ b/include/etl/type_traits.h @@ -736,12 +736,16 @@ namespace etl template auto nonvoid_convertible(...)->etl::false_type; } - +#if defined(ETL_COMPILER_ARM5) +template + struct is_convertible : etl::integral_constant {}; +#else template struct is_convertible : etl::integral_constant(0))::value && decltype(private_type_traits::nonvoid_convertible(0))::value) || (etl::is_void::value && etl::is_void::value)> {}; #endif +#endif #if ETL_CPP17_SUPPORTED template diff --git a/include/etl/unordered_map.h b/include/etl/unordered_map.h index 45220ad1..3d72a0ea 100644 --- a/include/etl/unordered_map.h +++ b/include/etl/unordered_map.h @@ -1306,7 +1306,7 @@ namespace etl return *this; } - +#if ETL_CPP11_SUPPORTED //************************************************************************* /// Move assignment operator. //************************************************************************* @@ -1320,6 +1320,7 @@ namespace etl return *this; } +#endif protected: