aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/cps/CodeGen.h1
-rw-r--r--include/cps/TypeSystem.h1
2 files changed, 2 insertions, 0 deletions
diff --git a/include/cps/CodeGen.h b/include/cps/CodeGen.h
index 6e0fab1..d624ca6 100644
--- a/include/cps/CodeGen.h
+++ b/include/cps/CodeGen.h
@@ -41,6 +41,7 @@ class CodeGen {
bool isVisible(size_t Owner) const;
void selectUnit(size_t Unit);
void importSymbols();
+ void runGlobalPrePass(const SourceUnit &Unit, int Phase);
IdentifierMap<SymbolInfo> Symbols;
IdentifierMap<IdentifierMap<FunctionDefAST*>> ClassMethods;
std::string CurrentClass;
diff --git a/include/cps/TypeSystem.h b/include/cps/TypeSystem.h
index d699067..1391345 100644
--- a/include/cps/TypeSystem.h
+++ b/include/cps/TypeSystem.h
@@ -112,6 +112,7 @@ struct SymbolInfo {
llvm::Constant *ConstantValue = nullptr; // Non-null for CONSTANT; no storage.
unsigned ScopeID = 0;
bool IsReference = false; // Storage is a slot containing the current object address.
+ bool IsGlobal = false;
};
class TypeSystem {