Author
anonymous
about 2 years ago
Language
C++
Compiler
gcc 4.9.4
Options
Warnings
Boost 1.75.0
C++14(GNU)
no pedantic
Author
anonymous
about 2 years ago
$ g++ prog.cc -Wall -Wextra -I/opt/wandbox/boost-1.75.0-gcc-4.9.4/include -std=gnu++14
In file included from prog.cc:8:0:
ArduinoJson.h:10:4: error: #error ArduinoJson requires C++11 or newer. Configure your compiler for C++11 or downgrade ArduinoJson to 6.20.
# error ArduinoJson requires C++11 or newer. Configure your compiler for C++11 or downgrade ArduinoJson to 6.20.
^
In file included from prog.cc:8:0:
ArduinoJson.h:340:2: error: expected unqualified-id before '&&' token
T&& declval();
^
In file included from prog.cc:8:0:
ArduinoJson.h:692:53: error: 'declval' was not declared in this scope
typename enable_if<is_same<decltype(declval<const T>().c_str()),
^
ArduinoJson.h:692:79: error: a function call cannot appear in a constant-expression
typename enable_if<is_same<decltype(declval<const T>().c_str()),
^
ArduinoJson.h:693:55: error: template argument 1 is invalid
const char*>::value>::type>
^
ArduinoJson.h:693:63: error: template argument 1 is invalid
const char*>::value>::type>
^
ArduinoJson.h:693:70: error: template argument 2 is invalid
const char*>::value>::type>
^
ArduinoJson.h:694:5: error: expected '::' before ':' token
: true_type {};
^
ArduinoJson.h:694:5: error: expected identifier before ':' token
ArduinoJson.h:694:5: error: qualified name does not name a class before ':' token
ArduinoJson.h:694:5: error: expected '{' before ':' token
ArduinoJson.h:694:5: error: expected unqualified-id before ':' token
ArduinoJson.h:699:53: error: 'declval' was not declared in this scope
typename enable_if<is_same<decltype(declval<const T>().data()),
^
ArduinoJson.h:699:78: error: a function call cannot appear in a constant-expression
typename enable_if<is_same<decltype(declval<const T>().data()),
^
ArduinoJson.h:700:55: error: template argument 1 is invalid
const char*>::value>::type>
^
ArduinoJson.h:700:63: error: template argument 1 is invalid
const char*>::value>::type>
^
ArduinoJson.h:700:70: error: template argument 2 is invalid
const char*>::value>::type>
^
ArduinoJson.h:701:5: error: expected '::' before ':' token
: true_type {};
^
ArduinoJson.h:701:5: error: expected identifier before ':' token
ArduinoJson.h:701:5: error: qualified name does not name a class before ':' token
ArduinoJson.h:701:5: error: expected '{' before ':' token
ArduinoJson.h:701:5: error: expected unqualified-id before ':' token
ArduinoJson.h:707:29: error: 'declval' was not declared in this scope
is_same<decltype(declval<const T>().length()), size_t>::value>::type>
^
ArduinoJson.h:707:56: error: a function call cannot appear in a constant-expression
is_same<decltype(declval<const T>().length()), size_t>::value>::type>
^
ArduinoJson.h:707:65: error: template argument 1 is invalid
is_same<decltype(declval<const T>().length()), size_t>::value>::type>
^
ArduinoJson.h:707:73: error: template argument 1 is invalid
is_same<decltype(declval<const T>().length()), size_t>::value>::type>
^
ArduinoJson.h:707:80: error: template argument 2 is invalid
is_same<decltype(declval<const T>().length()), size_t>::value>::type>
^
ArduinoJson.h:708:5: error: expected '::' before ':' token
: true_type {};
^
ArduinoJson.h:708:5: error: expected identifier before ':' token
ArduinoJson.h:708:5: error: qualified name does not name a class before ':' token
ArduinoJson.h:708:5: error: expected '{' before ':' token
ArduinoJson.h:708:5: error: expected unqualified-id before ':' token
ArduinoJson.h:714:29: error: 'declval' was not declared in this scope
is_same<decltype(declval<const T>().size()), size_t>::value>::type>
^
ArduinoJson.h:714:54: error: a function call cannot appear in a constant-expression
is_same<decltype(declval<const T>().size()), size_t>::value>::type>
^
ArduinoJson.h:714:63: error: template argument 1 is invalid
is_same<decltype(declval<const T>().size()), size_t>::value>::type>
^
ArduinoJson.h:714:71: error: template argument 1 is invalid
is_same<decltype(declval<const T>().size()), size_t>::value>::type>
^
ArduinoJson.h:714:78: error: template argument 2 is invalid
is_same<decltype(declval<const T>().size()), size_t>::value>::type>
^
ArduinoJson.h:715:5: error: expected '::' before ':' token
: true_type {};
^
ArduinoJson.h:715:5: error: expected identifier before ':' token
ArduinoJson.h:715:5: error: qualified name does not name a class before ':' token
ArduinoJson.h:715:5: error: expected '{' before ':' token
ArduinoJson.h:715:5: error: expected unqualified-id before ':' token
In file included from prog.cc:8:0:
ArduinoJson.h: In function 'TFloat ArduinoJson::V6210HB::detail::make_float(TFloat, TExponent)':
ArduinoJson.h:1736:9: error: expected nested-name-specifier before 'traits'
using traits = FloatTraits<TFloat>;
^
ArduinoJson.h:1737:8: error: 'powersOfTen' does not name a type
auto powersOfTen = e > 0 ? traits::positiveBinaryPowersOfTen()
^
ArduinoJson.h:1743:12: error: 'powersOfTen' was not declared in this scope
m *= powersOfTen[index];
^
ArduinoJson.h: At global scope:
ArduinoJson.h:2654:64: error: '>>' should be '> >' within a nested template argument list
MemberProxy<TDerived, TString>>::type
^
ArduinoJson.h:2658:63: error: '>>' should be '> >' within a nested template argument list
MemberProxy<TDerived, TChar*>>::type
^
ArduinoJson.h:2692:66: error: '>>' should be '> >' within a nested template argument list
class ElementProxy : public VariantRefBase<ElementProxy<TUpstream>>,
^
ArduinoJson.h:2693:68: error: '>>' should be '> >' within a nested template argument list
public VariantOperators<ElementProxy<TUpstream>> {
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonVariant>::checkJson(ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:2761:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:2762:14: error: 'data' was not declared in this scope
return !!data;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonVariantConst>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:2777:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:2778:14: error: 'data' was not declared in this scope
return !!data;
^
ArduinoJson.h: In static member function 'static ArduinoJson::V6210HB::JsonArrayConst ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonArrayConst>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:2968:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:2969:12: error: 'data' was not declared in this scope
return data ? data->asArray() : 0;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonArrayConst>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:2972:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:2973:12: error: 'data' was not declared in this scope
return data && data->isArray();
^
ArduinoJson.h: In static member function 'static ArduinoJson::V6210HB::JsonArray ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonArray>::fromJson(ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:3079:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:3080:10: error: 'pool' does not name a type
auto pool = getPool(src);
^
ArduinoJson.h:3081:22: error: 'pool' was not declared in this scope
return JsonArray(pool, data != 0 ? data->asArray() : 0);
^
ArduinoJson.h:3081:28: error: 'data' was not declared in this scope
return JsonArray(pool, data != 0 ? data->asArray() : 0);
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonArray>::checkJson(ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:3089:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:3090:12: error: 'data' was not declared in this scope
return data && data->isArray();
^
ArduinoJson.h: In static member function 'static ArduinoJson::V6210HB::JsonObjectConst ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonObjectConst>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:3300:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:3301:12: error: 'data' was not declared in this scope
return data != 0 ? data->asObject() : 0;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonObjectConst>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:3304:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:3305:12: error: 'data' was not declared in this scope
return data && data->isObject();
^
ArduinoJson.h: At global scope:
ArduinoJson.h:3312:62: error: '>>' should be '> >' within a nested template argument list
: public VariantRefBase<MemberProxy<TUpstream, TStringRef>>,
^
ArduinoJson.h:3313:64: error: '>>' should be '> >' within a nested template argument list
public VariantOperators<MemberProxy<TUpstream, TStringRef>> {
^
ArduinoJson.h:3410:73: error: '>>' should be '> >' within a nested template argument list
detail::MemberProxy<JsonObject, TString>>::type
^
ArduinoJson.h:3417:72: error: '>>' should be '> >' within a nested template argument list
detail::MemberProxy<JsonObject, TChar*>>::type
^
ArduinoJson.h: In static member function 'static ArduinoJson::V6210HB::JsonObject ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonObject>::fromJson(ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:3489:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:3490:10: error: 'pool' does not name a type
auto pool = getPool(src);
^
ArduinoJson.h:3491:23: error: 'pool' was not declared in this scope
return JsonObject(pool, data != 0 ? data->asObject() : 0);
^
ArduinoJson.h:3491:29: error: 'data' was not declared in this scope
return JsonObject(pool, data != 0 ? data->asObject() : 0);
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonObject>::checkJson(ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:3499:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:3500:12: error: 'data' was not declared in this scope
return data && data->isObject();
^
ArduinoJson.h: At global scope:
ArduinoJson.h:3593:49: error: '>>' should be '> >' within a nested template argument list
detail::MemberProxy<JsonDocument&, TString>>::type
^
ArduinoJson.h:3600:48: error: '>>' should be '> >' within a nested template argument list
detail::MemberProxy<JsonDocument&, TChar*>>::type
^
ArduinoJson.h:3722:38: error: expected ',' or '...' before '&&' token
BasicJsonDocument(BasicJsonDocument&& src) : AllocatorOwner<TAllocator>(src) {
^
ArduinoJson.h:3722:44: error: invalid constructor; you probably meant 'ArduinoJson::V6210HB::BasicJsonDocument<TAllocator> (const ArduinoJson::V6210HB::BasicJsonDocument<TAllocator>&)'
BasicJsonDocument(BasicJsonDocument&& src) : AllocatorOwner<TAllocator>(src) {
^
ArduinoJson.h:3751:49: error: expected ',' or '...' before '&&' token
BasicJsonDocument& operator=(BasicJsonDocument&& src) {
^
ArduinoJson.h: In member function 'ArduinoJson::V6210HB::BasicJsonDocument<TAllocator>& ArduinoJson::V6210HB::BasicJsonDocument<TAllocator>::operator=(ArduinoJson::V6210HB::BasicJsonDocument<TAllocator>)':
ArduinoJson.h:3752:20: error: 'src' was not declared in this scope
moveAssignFrom(src);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:4160:57: error: '>>' should be '> >' within a nested template argument list
MemberProxy<TDerived, TString*>>::type
^
ArduinoJson.h:4167:56: error: '>>' should be '> >' within a nested template argument list
MemberProxy<TDerived, TString>>::type
^
ArduinoJson.h:4444:1: error: expected unqualified-id before 'using'
using void_t = void;
^
ArduinoJson.h:4449:8: error: 'void_t' was not declared in this scope
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4449:28: error: '.' cannot appear in a constant-expression
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4449:41: error: a function call cannot appear in a constant-expression
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4449:42: error: a function call cannot appear in a constant-expression
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4449:58: error: '.' cannot appear in a constant-expression
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4449:67: error: a function call cannot appear in a constant-expression
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4449:68: error: a function call cannot appear in a constant-expression
T, void_t<decltype(T().push_back('a')), decltype(T().append(""))>>
^
ArduinoJson.h:4450:7: error: wrong number of template arguments (3, should be 2)
: true_type {};
^
ArduinoJson.h:4446:8: error: provided for 'template<class T, class> struct ArduinoJson::V6210HB::detail::is_std_string'
struct is_std_string : false_type {};
^
ArduinoJson.h: In static member function 'static void ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<((ArduinoJson::V6210HB::detail::is_integral<T>::value && (! ArduinoJson::V6210HB::detail::is_same<bool, T>::value)) && (! ArduinoJson::V6210HB::detail::is_same<char, T>::value))>::type>::toJson(T, ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:4708:10: error: 'data' does not name a type
auto data = getData(dst);
^
In file included from prog.cc:8:0:
ArduinoJson.h:4709:5: error: there are no arguments to 'static_assert' that depend on a template parameter, so a declaration of 'static_assert' must be available [-fpermissive]
ARDUINOJSON_ASSERT_INTEGER_TYPE_IS_SUPPORTED(T);
^
ArduinoJson.h:4709:5: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
In file included from prog.cc:8:0:
ArduinoJson.h:4710:9: error: 'data' was not declared in this scope
if (data)
^
In file included from prog.cc:8:0:
ArduinoJson.h: In static member function 'static T ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<((ArduinoJson::V6210HB::detail::is_integral<T>::value && (! ArduinoJson::V6210HB::detail::is_same<bool, T>::value)) && (! ArduinoJson::V6210HB::detail::is_same<char, T>::value))>::type>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4714:5: error: there are no arguments to 'static_assert' that depend on a template parameter, so a declaration of 'static_assert' must be available [-fpermissive]
ARDUINOJSON_ASSERT_INTEGER_TYPE_IS_SUPPORTED(T);
^
In file included from prog.cc:8:0:
ArduinoJson.h:4715:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4716:12: error: 'data' was not declared in this scope
return data ? data->template asIntegral<T>() : T();
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<((ArduinoJson::V6210HB::detail::is_integral<T>::value && (! ArduinoJson::V6210HB::detail::is_same<bool, T>::value)) && (! ArduinoJson::V6210HB::detail::is_same<char, T>::value))>::type>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4719:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4720:12: error: 'data' was not declared in this scope
return data && data->template isInteger<T>();
^
ArduinoJson.h: In static member function 'static T ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<ArduinoJson::V6210HB::detail::is_enum<T>::value>::type>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4730:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4731:12: error: 'data' was not declared in this scope
return data ? static_cast<T>(data->template asIntegral<int>()) : T();
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<ArduinoJson::V6210HB::detail::is_enum<T>::value>::type>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4734:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4735:12: error: 'data' was not declared in this scope
return data && data->template isInteger<int>();
^
ArduinoJson.h: In static member function 'static void ArduinoJson::V6210HB::Converter<bool>::toJson(bool, ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:4741:10: error: 'data' does not name a type
auto data = getData(dst);
^
ArduinoJson.h:4742:9: error: 'data' was not declared in this scope
if (data)
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<bool>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4746:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4747:12: error: 'data' was not declared in this scope
return data ? data->asBoolean() : false;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<bool>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4750:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4751:12: error: 'data' was not declared in this scope
return data && data->isBoolean();
^
ArduinoJson.h: In static member function 'static void ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<ArduinoJson::V6210HB::detail::is_floating_point<T>::value>::type>::toJson(T, ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:4759:10: error: 'data' does not name a type
auto data = getData(dst);
^
ArduinoJson.h:4760:9: error: 'data' was not declared in this scope
if (data)
^
ArduinoJson.h: In static member function 'static T ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<ArduinoJson::V6210HB::detail::is_floating_point<T>::value>::type>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4764:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4765:12: error: 'data' was not declared in this scope
return data ? data->template asFloat<T>() : 0;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<ArduinoJson::V6210HB::detail::is_floating_point<T>::value>::type>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4768:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4769:12: error: 'data' was not declared in this scope
return data && data->isFloat();
^
ArduinoJson.h: In static member function 'static const char* ArduinoJson::V6210HB::Converter<const char*>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4778:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4779:12: error: 'data' was not declared in this scope
return data ? data->asString().c_str() : 0;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<const char*>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4782:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4783:12: error: 'data' was not declared in this scope
return data && data->isString();
^
ArduinoJson.h: In static member function 'static ArduinoJson::V6210HB::JsonString ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonString>::fromJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4792:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4793:12: error: 'data' was not declared in this scope
return data ? data->asString() : 0;
^
ArduinoJson.h: In static member function 'static bool ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::JsonString>::checkJson(ArduinoJson::V6210HB::JsonVariantConst)':
ArduinoJson.h:4796:10: error: 'data' does not name a type
auto data = getData(src);
^
ArduinoJson.h:4797:12: error: 'data' was not declared in this scope
return data && data->isString();
^
ArduinoJson.h: In function 'typename ArduinoJson::V6210HB::detail::enable_if<ArduinoJson::V6210HB::detail::IsString<TString>::value, bool>::type ArduinoJson::V6210HB::convertToJson(const T&, ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:4804:8: error: 'data' does not name a type
auto data = VariantAttorney::getData(dst);
^
ArduinoJson.h:4805:8: error: 'pool' does not name a type
auto pool = VariantAttorney::getPool(dst);
^
ArduinoJson.h:4806:27: error: 'data' was not declared in this scope
return variantSetString(data, adaptString(src), pool);
^
ArduinoJson.h:4806:51: error: 'pool' was not declared in this scope
return variantSetString(data, adaptString(src), pool);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:4809:45: error: '>>' should be '> >' within a nested template argument list
struct Converter<SerializedValue<const char*>>
^
ArduinoJson.h: In static member function 'static void ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::SerializedValue<const char*> >::toJson(ArduinoJson::V6210HB::SerializedValue<const char*>, ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:4812:10: error: 'data' does not name a type
auto data = getData(dst);
^
ArduinoJson.h:4813:9: error: 'data' was not declared in this scope
if (data)
^
ArduinoJson.h: In static member function 'static void ArduinoJson::V6210HB::Converter<ArduinoJson::V6210HB::SerializedValue<T>, typename ArduinoJson::V6210HB::detail::enable_if<(! ArduinoJson::V6210HB::detail::is_same<const char*, T>::value)>::type>::toJson(ArduinoJson::V6210HB::SerializedValue<T>, ArduinoJson::V6210HB::JsonVariant)':
ArduinoJson.h:4823:10: error: 'data' does not name a type
auto data = getData(dst);
^
ArduinoJson.h:4824:10: error: 'pool' does not name a type
auto pool = getPool(dst);
^
ArduinoJson.h:4825:9: error: 'data' was not declared in this scope
if (data)
^
ArduinoJson.h:4826:32: error: 'pool' was not declared in this scope
data->storeOwnedRaw(src, pool);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:4830:27: error: 'nullptr' was not declared in this scope
struct Converter<decltype(nullptr)> : private detail::VariantAttorney {
^
ArduinoJson.h:4830:34: error: a function call cannot appear in a constant-expression
struct Converter<decltype(nullptr)> : private detail::VariantAttorney {
^
ArduinoJson.h:4830:35: error: template argument 1 is invalid
struct Converter<decltype(nullptr)> : private detail::VariantAttorney {
^
ArduinoJson.h:4991:26: error: 'nullptr' was not declared in this scope
struct Comparer<decltype(nullptr), void> : NullComparer {
^
ArduinoJson.h:4991:33: error: a function call cannot appear in a constant-expression
struct Comparer<decltype(nullptr), void> : NullComparer {
^
ArduinoJson.h:4991:40: error: template argument 1 is invalid
struct Comparer<decltype(nullptr), void> : NullComparer {
^
ArduinoJson.h:5500:2: error: expected unqualified-id before '&&' token
T&& forward(typename remove_reference<T>::type& t) noexcept {
^
ArduinoJson.h:5682:66: error: expected ',' or '...' before '&&' token
Reader<typename remove_reference<TInput>::type> makeReader(TInput&& input) {
^
ArduinoJson.h: In function 'ArduinoJson::V6210HB::detail::Reader<typename ArduinoJson::V6210HB::detail::remove_reference<T>::type> ArduinoJson::V6210HB::detail::makeReader(TInput)':
ArduinoJson.h:5684:7: error: 'forward' is not a member of 'ArduinoJson::V6210HB::detail'
detail::forward<TInput>(input)};
^
ArduinoJson.h:5684:31: error: 'input' was not declared in this scope
detail::forward<TInput>(input)};
^
ArduinoJson.h:5683:57: error: expected primary-expression before '{' token
return Reader<typename remove_reference<TInput>::type>{
^
ArduinoJson.h:5683:57: error: expected ';' before '{' token
ArduinoJson.h:5684:7: error: 'forward' is not a member of 'ArduinoJson::V6210HB::detail'
detail::forward<TInput>(input)};
^
ArduinoJson.h:5684:29: error: expected primary-expression before '>' token
detail::forward<TInput>(input)};
^
ArduinoJson.h: At global scope:
ArduinoJson.h:5785:60: error: expected ',' or '...' before '&&' token
DeserializationError deserialize(JsonDocument& doc, TStream&& input,
^
ArduinoJson.h: In function 'ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::detail::deserialize(ArduinoJson::V6210HB::JsonDocument&, TStream)':
ArduinoJson.h:5787:8: error: 'reader' does not name a type
auto reader = makeReader(detail::forward<TStream>(input));
^
ArduinoJson.h:5788:8: error: 'data' does not name a type
auto data = VariantAttorney::getData(doc);
^
ArduinoJson.h:5789:8: error: 'pool' does not name a type
auto pool = VariantAttorney::getPool(doc);
^
ArduinoJson.h:5790:8: error: 'options' does not name a type
auto options = makeDeserializationOptions(args...);
^
ArduinoJson.h:5792:42: error: 'pool' was not declared in this scope
return makeDeserializer<TDeserializer>(pool, reader,
^
ArduinoJson.h:5792:48: error: 'reader' was not declared in this scope
return makeDeserializer<TDeserializer>(pool, reader,
^
ArduinoJson.h:5793:60: error: 'input' was not declared in this scope
makeStringStorage(input, pool))
^
ArduinoJson.h:5794:15: error: 'data' was not declared in this scope
.parse(*data, options.filter, options.nestingLimit);
^
ArduinoJson.h:5794:21: error: 'options' was not declared in this scope
.parse(*data, options.filter, options.nestingLimit);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:5800:62: error: default template arguments may not be used in function templates without -std=c++11 or -std=gnu++11
Size inputSize, Args... args) {
^
ArduinoJson.h: In function 'ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::detail::deserialize(ArduinoJson::V6210HB::JsonDocument&, TChar*, Size, Args ...)':
ArduinoJson.h:5801:8: error: 'reader' does not name a type
auto reader = makeReader(input, size_t(inputSize));
^
ArduinoJson.h:5802:8: error: 'data' does not name a type
auto data = VariantAttorney::getData(doc);
^
ArduinoJson.h:5803:8: error: 'pool' does not name a type
auto pool = VariantAttorney::getPool(doc);
^
ArduinoJson.h:5804:8: error: 'options' does not name a type
auto options = makeDeserializationOptions(args...);
^
ArduinoJson.h:5806:42: error: 'pool' was not declared in this scope
return makeDeserializer<TDeserializer>(pool, reader,
^
ArduinoJson.h:5806:48: error: 'reader' was not declared in this scope
return makeDeserializer<TDeserializer>(pool, reader,
^
ArduinoJson.h:5808:15: error: 'data' was not declared in this scope
.parse(*data, options.filter, options.nestingLimit);
^
ArduinoJson.h:5808:21: error: 'options' was not declared in this scope
.parse(*data, options.filter, options.nestingLimit);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:6411:61: error: expected ',' or '...' before '&&' token
DeserializationError deserializeJson(JsonDocument& doc, Args&&... args) {
^
ArduinoJson.h:6411:71: error: parameter packs not expanded with '...':
DeserializationError deserializeJson(JsonDocument& doc, Args&&... args) {
^
ArduinoJson.h:6411:71: note: 'Args'
ArduinoJson.h: In function 'ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::deserializeJson(ArduinoJson::V6210HB::JsonDocument&, <type error>)':
ArduinoJson.h:6413:45: error: 'forward' is not a member of 'ArduinoJson::V6210HB::detail'
return deserialize<JsonDeserializer>(doc, detail::forward<Args>(args)...);
^
ArduinoJson.h:6413:65: error: expected primary-expression before '>' token
return deserialize<JsonDeserializer>(doc, detail::forward<Args>(args)...);
^
ArduinoJson.h:6413:67: error: 'args' was not declared in this scope
return deserialize<JsonDeserializer>(doc, detail::forward<Args>(args)...);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:6417:42: error: expected ',' or '...' before '&&' token
Args&&... args) {
^
ArduinoJson.h:6417:52: error: parameter packs not expanded with '...':
Args&&... args) {
^
ArduinoJson.h:6417:52: note: 'Args'
ArduinoJson.h: In function 'ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::deserializeJson(ArduinoJson::V6210HB::JsonDocument&, TChar*, <type error>)':
ArduinoJson.h:6420:40: error: 'forward' is not a member of 'ArduinoJson::V6210HB::detail'
detail::forward<Args>(args)...);
^
ArduinoJson.h:6420:60: error: expected primary-expression before '>' token
detail::forward<Args>(args)...);
^
ArduinoJson.h:6420:62: error: 'args' was not declared in this scope
detail::forward<Args>(args)...);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:6951:64: error: expected ',' or '...' before '&&' token
DeserializationError deserializeMsgPack(JsonDocument& doc, Args&&... args) {
^
ArduinoJson.h:6951:74: error: parameter packs not expanded with '...':
DeserializationError deserializeMsgPack(JsonDocument& doc, Args&&... args) {
^
ArduinoJson.h:6951:74: note: 'Args'
ArduinoJson.h: In function 'ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::deserializeMsgPack(ArduinoJson::V6210HB::JsonDocument&, <type error>)':
ArduinoJson.h:6953:48: error: 'forward' is not a member of 'ArduinoJson::V6210HB::detail'
return deserialize<MsgPackDeserializer>(doc, detail::forward<Args>(args)...);
^
ArduinoJson.h:6953:68: error: expected primary-expression before '>' token
return deserialize<MsgPackDeserializer>(doc, detail::forward<Args>(args)...);
^
ArduinoJson.h:6953:70: error: 'args' was not declared in this scope
return deserialize<MsgPackDeserializer>(doc, detail::forward<Args>(args)...);
^
ArduinoJson.h: At global scope:
ArduinoJson.h:6957:45: error: expected ',' or '...' before '&&' token
Args&&... args) {
^
ArduinoJson.h:6957:55: error: parameter packs not expanded with '...':
Args&&... args) {
^
ArduinoJson.h:6957:55: note: 'Args'
ArduinoJson.h: In function 'ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::deserializeMsgPack(ArduinoJson::V6210HB::JsonDocument&, TChar*, <type error>)':
ArduinoJson.h:6960:43: error: 'forward' is not a member of 'ArduinoJson::V6210HB::detail'
detail::forward<Args>(args)...);
^
ArduinoJson.h:6960:63: error: expected primary-expression before '>' token
detail::forward<Args>(args)...);
^
ArduinoJson.h:6960:65: error: 'args' was not declared in this scope
detail::forward<Args>(args)...);
^
prog.cc: In function 'int main()':
prog.cc:44:61: error: no matching function for call to 'deserializeMsgPack(ArduinoJson::V6210HB::StaticJsonDocument<300ul>&, uint8_t [46])'
DeserializationError error = deserializeMsgPack(doc, input);
^
prog.cc:44:61: note: candidates are:
In file included from prog.cc:8:0:
ArduinoJson.h:6951:22: note: template<class ... Args> ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::deserializeMsgPack(ArduinoJson::V6210HB::JsonDocument&, <type error>)
DeserializationError deserializeMsgPack(JsonDocument& doc, Args&&... args) {
^
ArduinoJson.h:6951:22: note: template argument deduction/substitution failed:
ArduinoJson.h:6956:22: note: template<class TChar, class ... Args> ArduinoJson::V6210HB::DeserializationError ArduinoJson::V6210HB::deserializeMsgPack(ArduinoJson::V6210HB::JsonDocument&, TChar*, <type error>)
DeserializationError deserializeMsgPack(JsonDocument& doc, TChar* input,
^
ArduinoJson.h:6956:22: note: template argument deduction/substitution failed:
prog.cc:44:61: note: candidate expects 3 arguments, 2 provided
DeserializationError error = deserializeMsgPack(doc, input);
^
In file included from prog.cc:8:0:
ArduinoJson.h: In instantiation of 'static T ArduinoJson::V6210HB::Converter<T, typename ArduinoJson::V6210HB::detail::enable_if<((ArduinoJson::V6210HB::detail::is_integral<T>::value && (! ArduinoJson::V6210HB::detail::is_same<bool, T>::value)) && (! ArduinoJson::V6210HB::detail::is_same<char, T>::value))>::type>::fromJson(ArduinoJson::V6210HB::JsonVariantConst) [with T = long int]':
ArduinoJson.h:2550:52: required from 'typename ArduinoJson::V6210HB::detail::enable_if<(! ArduinoJson::V6210HB::detail::ConverterNeedsWriteableRef<T>::value), T>::type ArduinoJson::V6210HB::detail::VariantRefBase<TDerived>::as() const [with T = long int; TDerived = ArduinoJson::V6210HB::detail::MemberProxy<ArduinoJson::V6210HB::JsonDocument&, const char*>; typename ArduinoJson::V6210HB::detail::enable_if<(! ArduinoJson::V6210HB::detail::ConverterNeedsWriteableRef<T>::value), T>::type = long int]'
ArduinoJson.h:2559:14: required from 'ArduinoJson::V6210HB::detail::VariantRefBase<TDerived>::operator T() const [with T = long int; TDerived = ArduinoJson::V6210HB::detail::MemberProxy<ArduinoJson::V6210HB::JsonDocument&, const char*>]'
prog.cc:57:25: required from here
ArduinoJson.h:4714:5: error: 'static_assert' was not declared in this scope
ARDUINOJSON_ASSERT_INTEGER_TYPE_IS_SUPPORTED(T);
^
In file included from prog.cc:8:0:
ArduinoJson.h: In instantiation of 'size_t ArduinoJson::V6210HB::detail::Writer<TDestination, Enable>::write(const uint8_t*, size_t) [with TDestination = std::basic_string<char>; Enable = void; size_t = long unsigned int; uint8_t = unsigned char]':
ArduinoJson.h:4261:12: required from 'void ArduinoJson::V6210HB::detail::CountingDecorator<TWriter>::write(const uint8_t*, size_t) [with TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>; uint8_t = unsigned char; size_t = long unsigned int]'
ArduinoJson.h:4372:5: required from 'void ArduinoJson::V6210HB::detail::TextFormatter<TWriter>::writeRaw(const char*) [with TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>]'
ArduinoJson.h:4645:5: required from 'size_t ArduinoJson::V6210HB::detail::JsonSerializer<TWriter>::visitNull() [with TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>; size_t = long unsigned int]'
ArduinoJson.h:2129:30: required from 'typename TVisitor::result_type ArduinoJson::V6210HB::detail::variantAccept(const ArduinoJson::V6210HB::detail::VariantData*, TVisitor&) [with TVisitor = ArduinoJson::V6210HB::detail::JsonSerializer<ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void> >; typename TVisitor::result_type = long unsigned int]'
ArduinoJson.h:4553:68: required from 'size_t ArduinoJson::V6210HB::detail::doSerialize(ArduinoJson::V6210HB::JsonVariantConst, TWriter) [with TSerializer = ArduinoJson::V6210HB::detail::JsonSerializer; TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>; size_t = long unsigned int]'
ArduinoJson.h:4559:49: required from 'size_t ArduinoJson::V6210HB::detail::serialize(ArduinoJson::V6210HB::JsonVariantConst, TDestination&) [with TSerializer = ArduinoJson::V6210HB::detail::JsonSerializer; TDestination = std::basic_string<char>; size_t = long unsigned int]'
ArduinoJson.h:4666:55: required from 'size_t ArduinoJson::V6210HB::serializeJson(ArduinoJson::V6210HB::JsonVariantConst, TDestination&) [with TDestination = std::basic_string<char>; size_t = long unsigned int]'
ArduinoJson.h:4912:27: required from here
ArduinoJson.h:4414:29: error: 'class std::basic_string<char>' has no member named 'write'
return _dest->write(s, n);
^
ArduinoJson.h: In instantiation of 'size_t ArduinoJson::V6210HB::detail::Writer<TDestination, Enable>::write(uint8_t) [with TDestination = std::basic_string<char>; Enable = void; size_t = long unsigned int; uint8_t = unsigned char]':
ArduinoJson.h:4258:12: required from 'void ArduinoJson::V6210HB::detail::CountingDecorator<TWriter>::write(uint8_t) [with TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>; uint8_t = unsigned char]'
ArduinoJson.h:4386:5: required from 'void ArduinoJson::V6210HB::detail::TextFormatter<TWriter>::writeRaw(char) [with TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>]'
ArduinoJson.h:4324:19: required from 'void ArduinoJson::V6210HB::detail::TextFormatter<TWriter>::writeFloat(T) [with T = double; TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>]'
ArduinoJson.h:4617:5: required from 'size_t ArduinoJson::V6210HB::detail::JsonSerializer<TWriter>::visitFloat(ArduinoJson::V6210HB::JsonFloat) [with TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>; size_t = long unsigned int; ArduinoJson::V6210HB::JsonFloat = double]'
ArduinoJson.h:1854:51: required from 'typename TVisitor::result_type ArduinoJson::V6210HB::detail::VariantData::accept(TVisitor&) const [with TVisitor = ArduinoJson::V6210HB::detail::JsonSerializer<ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void> >; typename TVisitor::result_type = long unsigned int]'
ArduinoJson.h:2127:31: required from 'typename TVisitor::result_type ArduinoJson::V6210HB::detail::variantAccept(const ArduinoJson::V6210HB::detail::VariantData*, TVisitor&) [with TVisitor = ArduinoJson::V6210HB::detail::JsonSerializer<ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void> >; typename TVisitor::result_type = long unsigned int]'
ArduinoJson.h:4553:68: required from 'size_t ArduinoJson::V6210HB::detail::doSerialize(ArduinoJson::V6210HB::JsonVariantConst, TWriter) [with TSerializer = ArduinoJson::V6210HB::detail::JsonSerializer; TWriter = ArduinoJson::V6210HB::detail::Writer<std::basic_string<char>, void>; size_t = long unsigned int]'
ArduinoJson.h:4559:49: required from 'size_t ArduinoJson::V6210HB::detail::serialize(ArduinoJson::V6210HB::JsonVariantConst, TDestination&) [with TSerializer = ArduinoJson::V6210HB::detail::JsonSerializer; TDestination = std::basic_string<char>; size_t = long unsigned int]'
ArduinoJson.h:4666:55: required from 'size_t ArduinoJson::V6210HB::serializeJson(ArduinoJson::V6210HB::JsonVariantConst, TDestination&) [with TDestination = std::basic_string<char>; size_t = long unsigned int]'
ArduinoJson.h:4912:27: required from here
ArduinoJson.h:4411:26: error: 'class std::basic_string<char>' has no member named 'write'
return _dest->write(c);
^
Exit Code:
1