From 29389a446859d0d92145ecb395a3b4bff2e0f8be Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Tue, 21 May 2024 21:25:19 +0100 Subject: Deal with the stupid NVDTOR situation Bill suggested using abi.h for this. Not sure if it's 100% ideal to need to pull in the whole header for this one macro but it's arguably better than most alternatives and definitely better than just continuing to duplicate it ad nauseam. --- src/abi.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/abi.h') diff --git a/src/abi.h b/src/abi.h index 98d972e..f0637e5 100644 --- a/src/abi.h +++ b/src/abi.h @@ -1,5 +1,5 @@ /* - * Copyright © 2023 Michael Smith + * Copyright © 2024 Michael Smith * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -26,6 +26,9 @@ #ifdef _WIN32 // Windows RTTI stuff, obviously only used on Windows. +// also this: number of virtual destructor entries (used all over the place) +#define NVDTOR 1 + // MSVC RTTI is quite a black box, but thankfully there's some useful sources: // - https://doxygen.reactos.org/d0/dcf/cxx_8h_source.html // - https://blog.quarkslab.com/visual-c-rtti-inspection.html @@ -93,6 +96,8 @@ mod const struct msvc_rtti_locator name = { \ #else +#define NVDTOR 2 // *stupid* ABI, btw + struct itanium_type_info_vtable { void *dtor1, *dtor2; }; -- cgit v1.2.3