summaryrefslogtreecommitdiff
path: root/plugins/rtti/itanium.h
diff options
context:
space:
mode:
authorMason Reed <mason@vector35.com>2025-03-23 23:25:29 -0400
committerMason Reed <mason@vector35.com>2025-03-23 23:25:29 -0400
commitc11feee4486d914a66b52ee6baae7eeeebf70724 (patch)
tree3c8a9745d36a1ab6bc5e7ff37e01192ba07aa984 /plugins/rtti/itanium.h
parent6e2520fa523afb4e8a1b629a8cbb14104b3a14b2 (diff)
Fix misc crashes with Itanium RTTI and improve 32bit support
32bit support still needs some fixes for the VMI offsets and other things, but its better than it was before. Likely need to do a little refactoring after this release to make the code less horrendous, but its fine for now.
Diffstat (limited to 'plugins/rtti/itanium.h')
-rw-r--r--plugins/rtti/itanium.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/plugins/rtti/itanium.h b/plugins/rtti/itanium.h
index e5f04cd9..d0d538ab 100644
--- a/plugins/rtti/itanium.h
+++ b/plugins/rtti/itanium.h
@@ -24,6 +24,7 @@ namespace BinaryNinja::RTTI::Itanium {
uint64_t base;
std::string type_name;
+ TypeInfo() = default;
TypeInfo(BinaryView *view, uint64_t address);
TypeInfo(uint64_t base, std::string &type_name) : base(base), type_name(type_name) {};
};
@@ -38,6 +39,7 @@ namespace BinaryNinja::RTTI::Itanium {
struct ClassTypeInfo : TypeInfo
{
+ ClassTypeInfo() = default;
ClassTypeInfo(BinaryView *view, uint64_t uint64) : TypeInfo(view, uint64) {}
};
@@ -45,6 +47,7 @@ namespace BinaryNinja::RTTI::Itanium {
{
uint64_t base_type;
+ SIClassTypeInfo() = default;
SIClassTypeInfo(BinaryView *view, uint64_t address);
};
@@ -70,6 +73,7 @@ namespace BinaryNinja::RTTI::Itanium {
uint64_t base_count;
std::vector<BaseClassTypeInfo> base_info;
+ VMIClassTypeInfo() = default;
VMIClassTypeInfo(BinaryView *view, uint64_t address);
};