diff --git a/core/src/Finalizer.cpp b/core/src/Finalizer.cpp index da127296b..4698555cf 100644 --- a/core/src/Finalizer.cpp +++ b/core/src/Finalizer.cpp @@ -27,7 +27,8 @@ bool Finalizer::contains(const FinalFn& fn) { auto& fns = functions(); for (const auto& stored : fns) { - if (stored.target() == fn.target()) + // Compare function pointer addresses + if (stored.target() == fn.target()) return true; } return false; diff --git a/core/src/include/Finalizer.hpp b/core/src/include/Finalizer.hpp index fdba461a3..4e5bea88d 100644 --- a/core/src/include/Finalizer.hpp +++ b/core/src/include/Finalizer.hpp @@ -17,7 +17,8 @@ namespace Nextsim { class Finalizer { public: - using FinalFn = std::function; + using FnType = void(); + using FinalFn = std::function; /*! * Adds a function to be called at finalization. Functions are ordered last-in, first out. * @param fn The function to be added. Must have void() signature.