Add "final" marker to a number of classes

Devirtualization is an optimization in the generated assembly: when a
class C is polymorphic but also final, ``((C *)ptr)->func()`` can be
turned from an indirect into a static call.
This commit is contained in:
Jan Engelhardt
2024-11-03 10:56:15 +01:00
parent a58c2752e5
commit 71772b9c9c
68 changed files with 2145 additions and 2145 deletions

View File

@@ -69,7 +69,7 @@ struct tShieldOrbInfo {
//------------------
// Shield orb script
//------------------
class ShieldOrb : public BaseObjScript {
class ShieldOrb final : public BaseObjScript {
public:
ShieldOrb() { info = NULL; }
int16_t CallEvent(int event, tOSIRISEventInfo *data);
@@ -81,7 +81,7 @@ private:
//------------------
// Energy orb script
//------------------
class EnergyOrb : public BaseObjScript {
class EnergyOrb final : public BaseObjScript {
public:
int16_t CallEvent(int event, tOSIRISEventInfo *data);
};