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;