From 7b48e3ebf381b90c8dbde00a286f9c20e9c2578b Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Wed, 18 Mar 2020 14:53:55 +0000 Subject: [PATCH] type_traits.h is_one_of fix for C++03 Change 'using' to 'typedef' for add_lvalue_reference --- include/etl/type_traits.h | 20 ++++++++++---------- include/etl/type_traits_generator.h | 12 ++++++------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/include/etl/type_traits.h b/include/etl/type_traits.h index 404fe3fa..85a21292 100644 --- a/include/etl/type_traits.h +++ b/include/etl/type_traits.h @@ -650,12 +650,12 @@ namespace etl //*************************************************************************** /// add_lvalue_reference - template struct add_lvalue_reference { using type = T & ; }; - template struct add_lvalue_reference { using type = T & ; }; - template <> struct add_lvalue_reference { using type = void; }; - template <> struct add_lvalue_reference { using type = const void; }; - template <> struct add_lvalue_reference { using type = volatile void; }; - template <> struct add_lvalue_reference { using type = const volatile void; }; + template struct add_lvalue_reference { typedef T& type; }; + template struct add_lvalue_reference { typedef T& type; }; + template <> struct add_lvalue_reference { typedef void type; }; + template <> struct add_lvalue_reference { typedef const void type; }; + template <> struct add_lvalue_reference { typedef volatile void type; }; + template <> struct add_lvalue_reference { typedef const volatile void type; }; #if ETL_CPP14_SUPPORTED template @@ -1321,10 +1321,10 @@ namespace etl /// Template to determine if a type is one of a specified list. ///\ingroup types template struct is_one_of { diff --git a/include/etl/type_traits_generator.h b/include/etl/type_traits_generator.h index cb90ba6c..e3696860 100644 --- a/include/etl/type_traits_generator.h +++ b/include/etl/type_traits_generator.h @@ -662,12 +662,12 @@ namespace etl //*************************************************************************** /// add_lvalue_reference - template struct add_lvalue_reference { using type = T & ; }; - template struct add_lvalue_reference { using type = T & ; }; - template <> struct add_lvalue_reference { using type = void; }; - template <> struct add_lvalue_reference { using type = const void; }; - template <> struct add_lvalue_reference { using type = volatile void; }; - template <> struct add_lvalue_reference { using type = const volatile void; }; + template struct add_lvalue_reference { typedef T& type; }; + template struct add_lvalue_reference { typedef T& type; }; + template <> struct add_lvalue_reference { typedef void type; }; + template <> struct add_lvalue_reference { typedef const void type; }; + template <> struct add_lvalue_reference { typedef volatile void type; }; + template <> struct add_lvalue_reference { typedef const volatile void type; }; #if ETL_CPP14_SUPPORTED template