aboutsummaryrefslogtreecommitdiffstats
path: root/c_compiler/include
diff options
context:
space:
mode:
authorYann Herklotz <ymherklotz@gmail.com>2017-03-28 12:39:37 +0100
committerYann Herklotz <ymherklotz@gmail.com>2017-03-28 12:39:37 +0100
commit915c49f93d9a4120dc89872f609824603b9310bb (patch)
treeb61dc26c14415f6677025b404ac51e66484722db /c_compiler/include
parentc15bba765558e1017ef68f6d319141d4fb0b71fd (diff)
downloadCompiler-915c49f93d9a4120dc89872f609824603b9310bb.tar.gz
Compiler-915c49f93d9a4120dc89872f609824603b9310bb.zip
Multidimensional array working
Diffstat (limited to 'c_compiler/include')
-rw-r--r--c_compiler/include/bindings.hpp1
-rw-r--r--c_compiler/include/expression.hpp2
2 files changed, 3 insertions, 0 deletions
diff --git a/c_compiler/include/bindings.hpp b/c_compiler/include/bindings.hpp
index 42d52e1..a8d8eba 100644
--- a/c_compiler/include/bindings.hpp
+++ b/c_compiler/include/bindings.hpp
@@ -42,6 +42,7 @@ public:
void setExpressionStackPosition(const int &stack_counter);
TypePtr getType(const std::string &id) const;
+ const std::vector<int> &getArraySizes(const std::string &id) const;
std::string breakLabel();
std::string breakLabel(const std::string &label);
diff --git a/c_compiler/include/expression.hpp b/c_compiler/include/expression.hpp
index 6bade38..f11ea02 100644
--- a/c_compiler/include/expression.hpp
+++ b/c_compiler/include/expression.hpp
@@ -74,8 +74,10 @@ public:
virtual void expressionDepth(int &depth_count) const;
virtual void stackPosition(Bindings bindings, int &depth_count) const;
virtual TypePtr getType(const Bindings &bindings) const;
+ virtual std::string id() const;
ExpressionPtr getIndex() const;
+ ExpressionPtr getPostfix() const;
};
class PostfixFunctionCall : public UnaryExpression