aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--builtin.c1
-rw-r--r--evaluate.c1
-rw-r--r--evaluate.h13
-rw-r--r--expand.c1
-rw-r--r--expression.h4
-rw-r--r--inline.c1
-rw-r--r--lib.c1
-rw-r--r--symbol.c1
8 files changed, 19 insertions, 4 deletions
diff --git a/builtin.c b/builtin.c
index dc5f4a68..2cafcbda 100644
--- a/builtin.c
+++ b/builtin.c
@@ -24,6 +24,7 @@
*/
#include "expression.h"
+#include "evaluate.h"
#include "expand.h"
#include "symbol.h"
#include "compat/bswap.h"
diff --git a/evaluate.c b/evaluate.c
index 0d50220a..3014f4ac 100644
--- a/evaluate.c
+++ b/evaluate.c
@@ -34,6 +34,7 @@
#include <fcntl.h>
#include <limits.h>
+#include "evaluate.h"
#include "lib.h"
#include "allocate.h"
#include "parse.h"
diff --git a/evaluate.h b/evaluate.h
new file mode 100644
index 00000000..36de7d69
--- /dev/null
+++ b/evaluate.h
@@ -0,0 +1,13 @@
+#ifndef EVALUATE_H
+#define EVALUATE_H
+
+struct expression;
+struct statement;
+struct symbol;
+struct symbol_list;
+
+struct symbol *evaluate_expression(struct expression *expr);
+struct symbol *evaluate_statement(struct statement *stmt);
+void evaluate_symbol_list(struct symbol_list *list);
+
+#endif
diff --git a/expand.c b/expand.c
index 4c68c98c..cd05ce11 100644
--- a/expand.c
+++ b/expand.c
@@ -41,6 +41,7 @@
#include "symbol.h"
#include "target.h"
#include "expression.h"
+#include "evaluate.h"
#include "expand.h"
diff --git a/expression.h b/expression.h
index d12b9197..b5fa9bc1 100644
--- a/expression.h
+++ b/expression.h
@@ -257,10 +257,6 @@ struct token *primary_expression(struct token *token, struct expression **tree);
struct token *parens_expression(struct token *token, struct expression **expr, const char *where);
struct token *assignment_expression(struct token *token, struct expression **tree);
-extern void evaluate_symbol_list(struct symbol_list *list);
-extern struct symbol *evaluate_statement(struct statement *stmt);
-extern struct symbol *evaluate_expression(struct expression *);
-
extern int expand_symbol(struct symbol *);
static inline struct expression *alloc_expression(struct position pos, int type)
diff --git a/inline.c b/inline.c
index 28c3afb1..fcc43db5 100644
--- a/inline.c
+++ b/inline.c
@@ -32,6 +32,7 @@
#include "parse.h"
#include "symbol.h"
#include "expression.h"
+#include "evaluate.h"
static void copy_statement(struct statement *src, struct statement *dst);
diff --git a/lib.c b/lib.c
index b94ed847..c0c87538 100644
--- a/lib.c
+++ b/lib.c
@@ -40,6 +40,7 @@
#include "parse.h"
#include "symbol.h"
#include "expression.h"
+#include "evaluate.h"
#include "scope.h"
#include "linearize.h"
#include "target.h"
diff --git a/symbol.c b/symbol.c
index 6cfaf2c8..595ae2ce 100644
--- a/symbol.c
+++ b/symbol.c
@@ -33,6 +33,7 @@
#include "symbol.h"
#include "scope.h"
#include "expression.h"
+#include "evaluate.h"
#include "target.h"