aboutsummaryrefslogtreecommitdiffstats
path: root/c_compiler/src/bindings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'c_compiler/src/bindings.cpp')
-rw-r--r--c_compiler/src/bindings.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/c_compiler/src/bindings.cpp b/c_compiler/src/bindings.cpp
index 7be0173..dda2ddc 100644
--- a/c_compiler/src/bindings.cpp
+++ b/c_compiler/src/bindings.cpp
@@ -6,7 +6,7 @@
// VariableStackBindings definition
VariableStackBindings::VariableStackBindings()
- : stack_counter_(4), expression_stack_(-4)
+ : stack_counter_(0), expression_stack_(-4)
{}
void VariableStackBindings::insertBinding(std::string id, TypePtr type, int stack_position)
@@ -23,6 +23,11 @@ void VariableStackBindings::increaseStackPosition()
stack_counter_ += 4;
}
+void VariableStackBindings::setStackPosition(int stack_counter)
+{
+ stack_counter_ = stack_counter;
+}
+
void VariableStackBindings::resetExpressionStack()
{
expression_stack_ = -4;