diff --git a/src/lib/Metadata/Finalizers/OverloadsFinalizer.cpp b/src/lib/Metadata/Finalizers/OverloadsFinalizer.cpp index c9cf05ebd..e1db14cd8 100644 --- a/src/lib/Metadata/Finalizers/OverloadsFinalizer.cpp +++ b/src/lib/Metadata/Finalizers/OverloadsFinalizer.cpp @@ -105,6 +105,7 @@ foldOverloads(SymbolID const& contextId, std::vector& functionIds, boo MRDOCS_CHECK_OR_CONTINUE(recordInfoPtr); auto* function = recordInfoPtr->asFunctionPtr(); MRDOCS_CHECK_OR_CONTINUE(function); + MRDOCS_CHECK_OR_CONTINUE(function->Class != FunctionClass::Destructor); // Check if the FunctionInfo is unique std::ranges::subrange otherFunctionIds( diff --git a/src/lib/Metadata/Info/Overloads.cpp b/src/lib/Metadata/Info/Overloads.cpp index b76dfe695..0fb1e3e4c 100644 --- a/src/lib/Metadata/Info/Overloads.cpp +++ b/src/lib/Metadata/Info/Overloads.cpp @@ -44,6 +44,8 @@ merge(OverloadsInfo& I, OverloadsInfo&& Other) void addMember(OverloadsInfo& I, FunctionInfo const& Member) { + MRDOCS_ASSERT(Member.Class != FunctionClass::Destructor); + if (I.Members.empty()) { I.Name = Member.Name;