mirror of
https://github.com/krgamestudios/Toy.git
synced 2026-04-15 14:54:07 +10:00
Updated interpreter
This commit is contained in:
@@ -22,6 +22,9 @@ TARGETS+=../source/parser.c
|
||||
#compiler
|
||||
TARGETS+=../source/compiler.c
|
||||
|
||||
#interpreter
|
||||
TARGETS+=../source/interpreter.c ../source/builtin.c
|
||||
|
||||
TESTS = $(wildcard test_*.c)
|
||||
OBJ = $(addprefix $(ODIR)/,$(TARGETS:../source/%.c=%.o)) $(addprefix $(ODIR)/,$(TESTS:.c=.o))
|
||||
|
||||
|
||||
@@ -75,16 +75,16 @@ unsigned char* compileString(char* source, size_t* size) {
|
||||
ASTNode* node = scanParser(&parser);
|
||||
while(node != NULL) {
|
||||
//pack up and leave
|
||||
if (node->type == AST_NODEERROR) {
|
||||
if (node->type == AST_NODE_ERROR) {
|
||||
printf(ERROR "error node detected\n" RESET);
|
||||
freeNode(node);
|
||||
freeASTNode(node);
|
||||
freeCompiler(&compiler);
|
||||
freeParser(&parser);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
writeCompiler(&compiler, node);
|
||||
freeNode(node);
|
||||
freeASTNode(node);
|
||||
node = scanParser(&parser);
|
||||
}
|
||||
|
||||
@@ -168,7 +168,7 @@ int main() {
|
||||
runInterpreter(&interpreter, bytecode, size);
|
||||
|
||||
//cleanup
|
||||
freeNode(node);
|
||||
freeASTNode(node);
|
||||
freeParser(&parser);
|
||||
freeCompiler(&compiler);
|
||||
freeInterpreter(&interpreter);
|
||||
Reference in New Issue
Block a user