diff --git a/include/spdlog/sinks/null_sink.h b/include/spdlog/sinks/null_sink.h index 44a45a3e..3e374893 100644 --- a/include/spdlog/sinks/null_sink.h +++ b/include/spdlog/sinks/null_sink.h @@ -8,6 +8,7 @@ #include "spdlog/details/synchronous_factory.h" #include +#include namespace spdlog { namespace sinks { @@ -16,7 +17,16 @@ template class null_sink : public base_sink { protected: - void sink_it_(const details::log_msg &) override {} + void sink_it_(const details::log_msg &msg) override + { + // prevent optimizer to remove this sink altogether (and do useful check while at it). + if(msg.level == level::off) + { + printf("Should never not be called if level is off!\n"); + } + assert(msg.level != level::off); + + } void flush_() override {} };