From 8e1c3336615f7719c89b8a3dc0dfd336cc0d37c0 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 12 Feb 2025 22:27:31 -0800 Subject: [PATCH] QCborStreamReader: use std::bit_cast in _toFloatingPoint Change-Id: Ic5b53111dbdb9073bb45fffd7c1bcb0c80b5df62 Reviewed-by: Marc Mutz --- src/corelib/serialization/qcborstreamreader.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/corelib/serialization/qcborstreamreader.h b/src/corelib/serialization/qcborstreamreader.h index 5c03f95f0c2..aa11306fb22 100644 --- a/src/corelib/serialization/qcborstreamreader.h +++ b/src/corelib/serialization/qcborstreamreader.h @@ -11,6 +11,9 @@ #include #include +#ifdef __cpp_lib_bit_cast +#include +#endif #include QT_REQUIRE_CONFIG(cborstreamreader); @@ -188,9 +191,13 @@ private: { using UIntFP = typename QIntegerForSizeof::Unsigned; UIntFP u = UIntFP(value64); +#ifdef __cpp_lib_bit_cast + return std::bit_cast(u); +#else FP f; memcpy(static_cast(&f), &u, sizeof(f)); return f; +#endif } friend QCborStreamReaderPrivate;