This commit is contained in:
J. Nick Koston
2026-02-28 16:39:13 -10:00
parent f3c175ab39
commit 28178b8c1c
3 changed files with 11 additions and 4 deletions
+2 -2
View File
@@ -2473,8 +2473,6 @@ def build_base_class(
out = f"class {base_class_name} : public {parent_class} {{\n"
out += " public:\n"
# No virtual destructor - messages are never deleted polymorphically
# Base classes don't implement encode/decode/calculate_size
# Derived classes handle these with their specific field numbers
cpp = ""
@@ -2482,6 +2480,8 @@ def build_base_class(
out += indent("\n".join(public_content)) + "\n"
out += "\n"
out += " protected:\n"
# Non-virtual protected destructor prevents accidental polymorphic deletion
protected_content.insert(0, f"~{base_class_name}() = default;")
out += indent("\n".join(protected_content))
if protected_content:
out += "\n"