From d5636b932e111056e852316cdbe6a711a9643183 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Fri, 30 Nov 2018 09:25:45 +0100 Subject: Patch mpack to work on AVR --- include/lib/mpack/mpack.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'include/lib/mpack/mpack.h') diff --git a/include/lib/mpack/mpack.h b/include/lib/mpack/mpack.h index 96014d4..cfadf78 100644 --- a/include/lib/mpack/mpack.h +++ b/include/lib/mpack/mpack.h @@ -2133,12 +2133,21 @@ MPACK_INLINE float mpack_load_float(const char* p) { MPACK_INLINE double mpack_load_double(const char* p) { MPACK_CHECK_FLOAT_ORDER(); +#ifdef MULTIPASS_ARCH_arduino_nano + MPACK_STATIC_ASSERT(sizeof(double) == sizeof(uint32_t), "double is wrong size??"); + union { + double d; + uint32_t u; + } v; + v.u = mpack_load_u32(p); +#else MPACK_STATIC_ASSERT(sizeof(double) == sizeof(uint64_t), "double is wrong size??"); union { double d; uint64_t u; } v; v.u = mpack_load_u64(p); +#endif return v.d; } -- cgit v1.2.3