diff options
author | John Hodge <tpg@mutabah.net> | 2016-10-30 16:00:54 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2016-10-30 16:00:54 +0800 |
commit | 787bd355795e71b70314d04dd972d71f71e9aa1f (patch) | |
tree | 37e59eb9c7f9b565fa6d7033a0384958e6e66d05 /src/resolve/absolute.cpp | |
parent | 280bee32a9c10ca65ae3fa59203a668e0ddfde69 (diff) | |
download | mrust-787bd355795e71b70314d04dd972d71f71e9aa1f.tar.gz |
Resolve Absolute - Fix segfault due to OOB indexing
Diffstat (limited to 'src/resolve/absolute.cpp')
-rw-r--r-- | src/resolve/absolute.cpp | 2 |
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; |