From f6ffcd948118301438b42071edd0367f6c3b7f06 Mon Sep 17 00:00:00 2001 From: arcoRocks <33952704+arcoRocks@users.noreply.github.com> Date: Mon, 4 Dec 2017 13:41:59 +0100 Subject: [PATCH] Fix for #387 --- include/chaiscript/language/chaiscript_parser.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/chaiscript/language/chaiscript_parser.hpp b/include/chaiscript/language/chaiscript_parser.hpp index 77eec4e2..349354d9 100644 --- a/include/chaiscript/language/chaiscript_parser.hpp +++ b/include/chaiscript/language/chaiscript_parser.hpp @@ -914,7 +914,7 @@ namespace chaiscript } break; case utility::fnv1a_32("__FUNC__"): { std::string fun_name = "NOT_IN_FUNCTION"; - for (size_t idx = m_match_stack.size() - 1; idx > 0; --idx) + for (size_t idx = m_match_stack.empty() ? 0 : m_match_stack.size() - 1; idx > 0; --idx) { if (m_match_stack[idx-1]->identifier == AST_Node_Type::Id && m_match_stack[idx-0]->identifier == AST_Node_Type::Arg_List) { @@ -927,7 +927,7 @@ namespace chaiscript } break; case utility::fnv1a_32("__CLASS__"): { std::string fun_name = "NOT_IN_CLASS"; - for (size_t idx = m_match_stack.size() - 1; idx > 1; --idx) + for (size_t idx = m_match_stack.empty() ? 0 : m_match_stack.size() - 1; idx > 1; --idx) { if (m_match_stack[idx-2]->identifier == AST_Node_Type::Id && m_match_stack[idx-1]->identifier == AST_Node_Type::Id