summaryrefslogtreecommitdiff
path: root/scope.h
diff options
context:
space:
mode:
Diffstat (limited to 'scope.h')
-rw-r--r--scope.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/scope.h b/scope.h
index 09a1375..da35044 100644
--- a/scope.h
+++ b/scope.h
@@ -1,6 +1,8 @@
#ifndef SCOPE_H
#define SCOPE_H
+#include "ccc.h"
+
struct storage_location {
enum {
STO_REG,
@@ -16,7 +18,7 @@ struct storage_location {
const struct reg* reg;
const char* label;
long long bp_offset;
- unsigned long long value;
+ integral_t value;
struct fn_decl_node* decl;
};
};
@@ -37,7 +39,7 @@ struct type_def {
struct type_key key;
bool is_signed;
bool is_floating;
- unsigned long long sz;
+ integral_t sz;
};
struct var_def {
@@ -49,15 +51,15 @@ struct var_def {
struct scope {
struct type_def** types;
- unsigned long long type_sz;
- unsigned long long type_cap;
+ integral_t type_sz;
+ integral_t type_cap;
struct var_def** vars;
- unsigned long long var_sz;
- unsigned long long var_cap;
+ integral_t var_sz;
+ integral_t var_cap;
struct scope* next_out;
- unsigned long long bp_offset;
+ integral_t bp_offset;
};
struct ast;