diff options
| author | LagoLunatic <LagoLunatic@users.noreply.github.com> | 2025-01-27 01:01:05 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-01-26 22:01:05 -0800 |
| commit | bf4053fefa301a307065a07ffc4c3f9f970f2638 (patch) | |
| tree | afc005dc11ce0d21654c5023349ab074683a1f30 /src/d/d_shop_system.cpp | |
| parent | 5644936254b6617875c5a55caeae3e2526849d5a (diff) | |
Fix spurious differences when using `ninja diff` (#2294)
* Fix spurious differences when using ninja diff
* Fix some clangd errors/warnings
Diffstat (limited to 'src/d/d_shop_system.cpp')
| -rw-r--r-- | src/d/d_shop_system.cpp | 71 |
1 files changed, 70 insertions, 1 deletions
diff --git a/src/d/d_shop_system.cpp b/src/d/d_shop_system.cpp index 41f358f75b..5b43be94e5 100644 --- a/src/d/d_shop_system.cpp +++ b/src/d/d_shop_system.cpp @@ -179,7 +179,7 @@ static shop_item_data item_seira_shop = { }, }; -static processFunc process[22] = { +static processFunc process[] = { &dShopSystem_c::seq_wait, &dShopSystem_c::seq_start, &dShopSystem_c::seq_select_wait, &dShopSystem_c::seq_select_start, &dShopSystem_c::seq_select, &dShopSystem_c::seq_moving, @@ -1661,3 +1661,72 @@ bool dShopSystem_c::dpdMove() { } #pragma nosyminline on + +// Need 0x78 bytes of padding with no symbol between process and dShopSystem_c::__vtable +// This is likely caused by the vtables of abstract base classes getting put there and then stripped out. +// Not sure which abstract base class could go there though, so we simulate it with some dummy classes for now. +class dummy_abstract_class { +public: + virtual void virt_func_0() = 0; + virtual void virt_func_1() = 0; + virtual void virt_func_2() = 0; + virtual void virt_func_3() = 0; + virtual void virt_func_4() = 0; + virtual void virt_func_5() = 0; + virtual void virt_func_6() = 0; + virtual void virt_func_7() = 0; + virtual void virt_func_8() = 0; + virtual void virt_func_9() = 0; + virtual void virt_func_10() = 0; + virtual void virt_func_11() = 0; + virtual void virt_func_12() = 0; + virtual void virt_func_13() = 0; + virtual void virt_func_14() = 0; + virtual void virt_func_15() = 0; + virtual void virt_func_16() = 0; + virtual void virt_func_17() = 0; + virtual void virt_func_18() = 0; + virtual void virt_func_19() = 0; + virtual void virt_func_20() = 0; + virtual void virt_func_21() = 0; + virtual void virt_func_22() = 0; + virtual void virt_func_23() = 0; + virtual void virt_func_24() = 0; + virtual void virt_func_25() = 0; + virtual void virt_func_26() = 0; + virtual void virt_func_27() = 0; +}; +class dummy_child_class : dummy_abstract_class { + virtual void virt_func_0(); + virtual void virt_func_1(); + virtual void virt_func_2(); + virtual void virt_func_3(); + virtual void virt_func_4(); + virtual void virt_func_5(); + virtual void virt_func_6(); + virtual void virt_func_7(); + virtual void virt_func_8(); + virtual void virt_func_9(); + virtual void virt_func_10(); + virtual void virt_func_11(); + virtual void virt_func_12(); + virtual void virt_func_13(); + virtual void virt_func_14(); + virtual void virt_func_15(); + virtual void virt_func_16(); + virtual void virt_func_17(); + virtual void virt_func_18(); + virtual void virt_func_19(); + virtual void virt_func_20(); + virtual void virt_func_21(); + virtual void virt_func_22(); + virtual void virt_func_23(); + virtual void virt_func_24(); + virtual void virt_func_25(); + virtual void virt_func_26(); + virtual void virt_func_27(); +}; +static dummy_child_class dummy() { + dummy_child_class temp; + return temp; +} |
