Fix compatibility with GCC 4.8

Closes #2045
This commit is contained in:
Benoit Blanchon
2024-02-01 21:37:45 +01:00
parent c98b05e207
commit 72642e3090
9 changed files with 50 additions and 9 deletions
+2 -1
View File
@@ -30,7 +30,8 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
}
// Move-constructor
JsonDocument(JsonDocument&& src) : JsonDocument() {
JsonDocument(JsonDocument&& src)
: JsonDocument(detail::DefaultAllocator::instance()) {
swap(*this, src);
}
@@ -9,15 +9,13 @@
ARDUINOJSON_BEGIN_PRIVATE_NAMESPACE
template <class...>
using void_t = void;
template <class T, typename = void>
struct is_std_string : false_type {};
template <class T>
struct is_std_string<
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
T, typename enable_if<is_same<void, decltype(T().push_back('a'))>::value &&
is_same<T&, decltype(T().append(""))>::value>::type>
: true_type {};
template <typename TDestination>