diff options
Diffstat (limited to 'c_compiler/src/bindings.cpp')
-rw-r--r-- | c_compiler/src/bindings.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/c_compiler/src/bindings.cpp b/c_compiler/src/bindings.cpp index 05bd288..a76429c 100644 --- a/c_compiler/src/bindings.cpp +++ b/c_compiler/src/bindings.cpp @@ -6,7 +6,7 @@ // VariableStackBindings definition VariableStackBindings::VariableStackBindings() - : stack_counter_(0), expression_stack_(-4) + : stack_counter_(0), expression_stack_(16) {} void VariableStackBindings::insertBinding(std::string id, TypePtr type, int stack_position) @@ -30,7 +30,12 @@ void VariableStackBindings::setStackPosition(int stack_counter) void VariableStackBindings::nextExpressionStackPosition() { - expression_stack_ -= 4; + expression_stack_ += 4; +} + +void VariableStackBindings::setExpressionStackPosition(const int& stack_counter) +{ + expression_stack_ = stack_counter; } int VariableStackBindings::currentStackPosition() const |