From 1c9239bade0814a2dbd1e9a45894d53a9f7062b8 Mon Sep 17 00:00:00 2001 From: Martin Michelsen Date: Tue, 4 Jul 2023 11:20:40 -0700 Subject: [PATCH] use bit_cast instead of reinterpret_cast --- src/QuestScript.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/QuestScript.cc b/src/QuestScript.cc index 57080997..11116306 100644 --- a/src/QuestScript.cc +++ b/src/QuestScript.cc @@ -3,6 +3,7 @@ #include #include +#include #include #include #include @@ -1198,7 +1199,7 @@ std::string disassemble_quest_script(const void* data, size_t size, GameVersion case Type::FLOAT32: { float v = cmd_r.get_f32l(); if (def->flags & QuestScriptOpcodeDefinition::Flag::PRESERVE_ARG_STACK) { - arg_stack_values.emplace_back(ArgStackValue::Type::INT, *reinterpret_cast(&v)); + arg_stack_values.emplace_back(ArgStackValue::Type::INT, bit_cast(v)); } dasm_arg = string_printf("%g", v); break; @@ -1320,7 +1321,7 @@ std::string disassemble_quest_script(const void* data, size_t size, GameVersion dasm_arg = string_printf("(float)r%" PRIu32, arg_value.as_int); break; case ArgStackValue::Type::INT: - dasm_arg = string_printf("%g", *reinterpret_cast(&arg_value.as_int)); + dasm_arg = string_printf("%g", bit_cast(arg_value.as_int)); break; default: dasm_arg = "/* invalid-type */";