From 4b577f1f2ac0fa89b6d71031ade1f1484bf1e46f Mon Sep 17 00:00:00 2001 From: Jason Turner Date: Sat, 30 May 2015 15:15:08 -0600 Subject: [PATCH] Undefined types are never equal --- include/chaiscript/dispatchkit/type_info.hpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/chaiscript/dispatchkit/type_info.hpp b/include/chaiscript/dispatchkit/type_info.hpp index e92fe23..a15c245 100644 --- a/include/chaiscript/dispatchkit/type_info.hpp +++ b/include/chaiscript/dispatchkit/type_info.hpp @@ -71,7 +71,8 @@ namespace chaiscript bool operator==(const std::type_info &ti) const CHAISCRIPT_NOEXCEPT { - return m_type_info == ti; + return !m_is_undef + && m_type_info == ti; } bool bare_equal(const Type_Info &ti) const CHAISCRIPT_NOEXCEPT @@ -81,7 +82,8 @@ namespace chaiscript bool bare_equal_type_info(const std::type_info &ti) const CHAISCRIPT_NOEXCEPT { - return m_bare_type_info == ti; + return !m_is_undef + && m_bare_type_info == ti; } bool is_const() const CHAISCRIPT_NOEXCEPT { return m_is_const; }