Browse Source

Modify implicit semicolon rules

gingerBill 7 years ago
parent
commit
b03ce0e9b4
2 changed files with 6 additions and 3 deletions
  1. 0 1
      src/common.cpp
  2. 6 2
      src/parser.cpp

+ 0 - 1
src/common.cpp

@@ -63,7 +63,6 @@ GB_ALLOCATOR_PROC(heap_allocator_proc) {
 	#else
 	case gbAllocation_Alloc:
 		// TODO(bill): Make sure this is aligned correctly
-		// ptr = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, align_formula_isize(size, alignment));
 		ptr = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, align_formula_isize(size, alignment));
 		break;
 	case gbAllocation_Free:

+ 6 - 2
src/parser.cpp

@@ -1371,8 +1371,12 @@ void expect_semicolon(AstFile *f, AstNode *s) {
 			if (is_semicolon_optional_for_node(f, s)) {
 				return;
 			}
-		} else if (f->curr_token.kind == Token_CloseBrace) {
-			return;
+		} else {
+			switch (f->curr_token.kind) {
+			case Token_CloseBrace:
+			case Token_CloseParen:
+				return;
+			}
 		}
 		String node_string = ast_node_strings[s->kind];
 		syntax_error(prev_token, "Expected ';' after %.*s, got %.*s",