summaryrefslogtreecommitdiff
path: root/src/resolve/absolute.cpp
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2016-10-30 16:00:54 +0800
committerJohn Hodge <tpg@mutabah.net>2016-10-30 16:00:54 +0800
commit787bd355795e71b70314d04dd972d71f71e9aa1f (patch)
tree37e59eb9c7f9b565fa6d7033a0384958e6e66d05 /src/resolve/absolute.cpp
parent280bee32a9c10ca65ae3fa59203a668e0ddfde69 (diff)
downloadmrust-787bd355795e71b70314d04dd972d71f71e9aa1f.tar.gz
Resolve Absolute - Fix segfault due to OOB indexing
Diffstat (limited to 'src/resolve/absolute.cpp')
-rw-r--r--src/resolve/absolute.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/resolve/absolute.cpp b/src/resolve/absolute.cpp
index 7f69f02d..f9d1b5ea 100644
--- a/src/resolve/absolute.cpp
+++ b/src/resolve/absolute.cpp
@@ -206,7 +206,7 @@ struct Context
}
void pop_block() {
assert( m_block_level > 0 );
- if( m_name_context.back().is_VarBlock() && m_name_context.back().as_VarBlock().level == m_block_level ) {
+ if( m_name_context.size() > 0 && m_name_context.back().is_VarBlock() && m_name_context.back().as_VarBlock().level == m_block_level ) {
DEBUG("Pop block from " << m_block_level << " with vars:" << FMT_CB(os,
for(const auto& v : m_name_context.back().as_VarBlock().variables)
os << " " << v.name << "#" << v.value;