Store 64-bit numbers (double and long long) in an additional slot

This change allows slots to be twices maller on 32-bit architectures.
See #1650 and #2103
This commit is contained in:
Benoit Blanchon
2024-08-27 08:02:09 +02:00
parent e682337655
commit e297932a98
20 changed files with 308 additions and 89 deletions
@@ -32,11 +32,7 @@ TEST_CASE("ARDUINOJSON_USE_LONG_LONG == 0") {
deserializeMsgPack(doc, "\xcf\x00\x00\x00\x01\x00\x00\x00\x00"_s);
REQUIRE(err == DeserializationError::Ok);
#if defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ >= 8
REQUIRE(doc.as<JsonInteger>() == 0x100000000);
#else
REQUIRE(doc.isNull());
#endif
}
}
}