diff --git a/wolfcrypt/src/misc.c b/wolfcrypt/src/misc.c index 0c53cdae4..43ef03f32 100644 --- a/wolfcrypt/src/misc.c +++ b/wolfcrypt/src/misc.c @@ -1009,9 +1009,12 @@ WC_MISC_STATIC WC_INLINE void ato64(const byte *in, w64wrapper *w64) #ifdef BIG_ENDIAN_ORDER XMEMCPY(&w64->n, in, sizeof(w64->n)); #else - word64 _in = 0; - XMEMCPY(&_in, in, sizeof(_in)); - w64->n = ByteReverseWord64(_in); + union { + word64 w; + byte b[sizeof(word64)]; + } _in; + XMEMCPY(_in.b, in, sizeof(_in)); + w64->n = ByteReverseWord64(_in.w); #endif /* BIG_ENDIAN_ORDER */ }