| 231 | } |
| 232 | |
| 233 | void CompilerContext::removeVariablesAboveStackHeight(unsigned _stackHeight) |
| 234 | { |
| 235 | std::vector<Declaration const*> toRemove; |
| 236 | for (auto _var: m_localVariables) |
| 237 | { |
| 238 | solAssert(!_var.second.empty(), ""); |
| 239 | solAssert(_var.second.back() <= stackHeight(), ""); |
| 240 | if (_var.second.back() >= _stackHeight) |
| 241 | toRemove.push_back(_var.first); |
| 242 | } |
| 243 | for (auto _var: toRemove) |
| 244 | removeVariable(*_var); |
| 245 | } |
| 246 | |
| 247 | unsigned CompilerContext::numberOfLocalVariables() const |
| 248 | { |
no test coverage detected