Compare commits

1 Commits
Author SHA1 Message Date
glm94 70a3118a99 'Minor' bug fix for the StatementList, forgot to set the capacity. 2022-04-04 19:44:13 +00:00
2 changed files with 11 additions and 3 deletions
+1 -1
View File
@@ -50,7 +50,7 @@ void RunFile(const char* path) {
StatementList* statements = Parse(tokens); StatementList* statements = Parse(tokens);
//PrintExpressionTree(tree); //PrintExpressionTree(tree);
printf("\n"); printf("\n");
Interpret(tree); //Interpret(tree);
FreeStatementList(statements); FreeStatementList(statements);
//FreeExpressionTree(tree); //FreeExpressionTree(tree);
DestroyTokenList(tokens); DestroyTokenList(tokens);
+10 -2
View File
@@ -64,7 +64,10 @@ Stmt* Statement(void) {
Stmt* PrintStatement(void) { Stmt* PrintStatement(void) {
Expr* value = Expression(); Expr* value = Expression();
if (!Match(1, Semicolon)) fprintf(stderr, "Expected ';' after value\n"); if (!Match(1, Semicolon)) {
fprintf(stderr, "Expected ';' after value\n");
return NULL;
}
AdvanceParser(); AdvanceParser();
@@ -74,7 +77,10 @@ Stmt* PrintStatement(void) {
Stmt* ExpressionStatement(void) { Stmt* ExpressionStatement(void) {
Expr* expr = Expression(); Expr* expr = Expression();
if (!Match(1, Semicolon)) fprintf(stderr, "Expected ';' after expression\n"); if (!Match(1, Semicolon)) {
fprintf(stderr, "Expected ';' after expression\n");
return NULL;
}
AdvanceParser(); AdvanceParser();
@@ -333,6 +339,8 @@ StatementList* CreateStatementList(void) {
return NULL; return NULL;
} }
list->capacity = STATEMENTLIST_DEFAULT_SIZE;
return list; return list;
} }