From d05837ab6dc291ee8ee3d94b33f86a6472c5847f Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sat, 8 Dec 2018 14:12:52 +0000 Subject: Labels for block and if statements (break only) --- src/entity.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/entity.cpp') diff --git a/src/entity.cpp b/src/entity.cpp index 707a04962..f3e11492a 100644 --- a/src/entity.cpp +++ b/src/entity.cpp @@ -147,8 +147,9 @@ struct Entity { } LibraryName; i32 Nil; struct { - String name; + String name; Ast *node; + Ast *parent; } Label; }; }; @@ -318,9 +319,10 @@ Entity *alloc_entity_nil(String name, Type *type) { return entity; } -Entity *alloc_entity_label(Scope *scope, Token token, Type *type, Ast *node) { +Entity *alloc_entity_label(Scope *scope, Token token, Type *type, Ast *node, Ast *parent) { Entity *entity = alloc_entity(Entity_Label, scope, token, type); entity->Label.node = node; + entity->Label.parent = parent; entity->state = EntityState_Resolved; return entity; } -- cgit v1.2.3