diff --git a/src/utils/PugsAssert.hpp b/src/utils/PugsAssert.hpp index 7ac521a51f73df6c5129ddd6ba346bd06453c07f..7793a9fc6a4ef537545b7691510b3553477d1bdf 100644 --- a/src/utils/PugsAssert.hpp +++ b/src/utils/PugsAssert.hpp @@ -9,7 +9,7 @@ #include <string> #include <tuple> -class AssertError +class AssertError : public std::runtime_error { private: const std::string m_file; @@ -41,7 +41,8 @@ class AssertError const std::string& function, const std::tuple<Args...>& tuple_args, const std::string_view args_string) - : m_file{filename}, + : std::runtime_error(""), + m_file{filename}, m_line{line}, m_function{function}, m_test{[&] { @@ -64,7 +65,11 @@ class AssertError } }()} { - ; + if (m_message.empty()) { + std::runtime_error::operator=(std::runtime_error(m_test.c_str())); + } else { + std::runtime_error::operator=(std::runtime_error(m_message.c_str())); + } } };