From b028f50fa3fe7515d4232824098c9f470ae7bbf9 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Tue, 13 Jan 2026 11:02:09 -0800 Subject: [PATCH] A better fix for gcc ptr->int casting pickiness. --- .../sql/gnc-sql-column-table-entry.hpp | 20 ++----------------- 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/libgnucash/backend/sql/gnc-sql-column-table-entry.hpp b/libgnucash/backend/sql/gnc-sql-column-table-entry.hpp index 326ba62fb1..d805e8c607 100644 --- a/libgnucash/backend/sql/gnc-sql-column-table-entry.hpp +++ b/libgnucash/backend/sql/gnc-sql-column-table-entry.hpp @@ -368,24 +368,8 @@ GncSqlColumnTableEntry::get_row_value_from_object(QofIdTypeConst obj_name, QofAccessFunc getter = get_getter(obj_name); if (getter != nullptr) { - if constexpr (sizeof(T) >= sizeof(void*)) - result = reinterpret_cast((getter)(const_cast(pObject), - nullptr)); - else - { - union converter - { - intptr_t whole; - uint32_t upper; - uint32_t lower; - }; - converter conv; - conv.whole = reinterpret_cast((getter)(const_cast(pObject), - nullptr)); - if (conv.upper) - throw std::runtime_error("Bits left over when converting pointer"); //crash out - result = conv.lower; - } + result = static_cast(reinterpret_cast((getter)(const_cast(pObject), + nullptr))); } } return result;