mirror of
https://git.freebsd.org/ports.git
synced 2025-06-25 14:40:32 -04:00
json11.cpp:153:24: error: invalid operands to binary expression ('nullptr_t' and 'nullptr_t') return m_value < static_cast<const Value<tag, T> *>(other)->m_value; ~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ json11.cpp:209:5: note: in instantiation of member function 'json11::Value<json11::Json::Type::NUL, nullptr_t>::less' requested here JsonNull() : Value(nullptr) {} ^ PR: 216071 Submitted by: cpm Reported by: jbeich Reviewed by: jbeich Approved by: Ralf van der Enden <tremere@cainites.net> (maintainer) Obtained from: upstream MFH: 2017Q1 (blanket)
37 lines
1 KiB
C++
37 lines
1 KiB
C++
--- ext/json11/json11.cpp.orig 2017-01-18 18:06:37 UTC
|
|
+++ ext/json11/json11.cpp
|
|
@@ -37,11 +37,21 @@ using std::make_shared;
|
|
using std::initializer_list;
|
|
using std::move;
|
|
|
|
+/* Helper for representing null - just a do-nothing struct, plus comparison
|
|
+ * operators so the helpers in JsonValue work. We can't use nullptr_t because
|
|
+ * it may not be orderable.
|
|
+*/
|
|
+
|
|
+struct NullStruct {
|
|
+ bool operator==(NullStruct) const { return true; }
|
|
+ bool operator<(NullStruct) const { return false; }
|
|
+};
|
|
+
|
|
/* * * * * * * * * * * * * * * * * * * *
|
|
* Serialization
|
|
*/
|
|
|
|
-static void dump(std::nullptr_t, string &out) {
|
|
+static void dump(NullStruct, string &out) {
|
|
out += "null";
|
|
}
|
|
|
|
@@ -204,9 +214,9 @@ public:
|
|
explicit JsonObject(Json::object &&value) : Value(move(value)) {}
|
|
};
|
|
|
|
-class JsonNull final : public Value<Json::NUL, std::nullptr_t> {
|
|
+class JsonNull final : public Value<Json::NUL, NullStruct> {
|
|
public:
|
|
- JsonNull() : Value(nullptr) {}
|
|
+ JsonNull() : Value({}) {}
|
|
};
|
|
|
|
/* * * * * * * * * * * * * * * * * * * *
|