aboutsummaryrefslogtreecommitdiffstats
path: root/c_compiler/src/bindings.cpp
diff options
context:
space:
mode:
authorYann Herklotz <ymherklotz@gmail.com>2017-03-16 18:37:50 +0000
committerYann Herklotz <ymherklotz@gmail.com>2017-03-16 18:37:50 +0000
commitf7b531ebaaa784a0dcebb877ec7b831b324f3510 (patch)
treeacc733a0ac5732799e6d0cc47a30da31e96e57fd /c_compiler/src/bindings.cpp
parent9ab7f5825f225cb42a6a0e8950f841a10db82f1b (diff)
downloadCompiler-f7b531ebaaa784a0dcebb877ec7b831b324f3510.tar.gz
Compiler-f7b531ebaaa784a0dcebb877ec7b831b324f3510.zip
Check if function calls work
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;