From: Brendan Hansen Date: Thu, 24 Jun 2021 02:44:04 +0000 (-0500) Subject: bugfixes with using packages X-Git-Url: https://git.brendanfh.com/?a=commitdiff_plain;h=e5bbbf6496f801e3a69ee5f8d0fbbc17f61a2ec4;p=onyx.git bugfixes with using packages --- diff --git a/bin/onyx b/bin/onyx index 502d0108..13c8473b 100755 Binary files a/bin/onyx and b/bin/onyx differ diff --git a/core/type_info/helper.onyx b/core/type_info/helper.onyx index 44c76a30..5dd1f860 100644 --- a/core/type_info/helper.onyx +++ b/core/type_info/helper.onyx @@ -76,7 +76,8 @@ write_type_name :: (writer: ^io.Writer, t: type_expr) { case .Struct { s := cast(^Type_Info_Struct) info; - io.write_str(writer, s.name); + if s.name.count > 0 do io.write_str(writer, s.name); + else do io.write_str(writer, ""); } case .Compound { diff --git a/src/onyxsymres.c b/src/onyxsymres.c index 76e328ca..eb091113 100644 --- a/src/onyxsymres.c +++ b/src/onyxsymres.c @@ -599,6 +599,8 @@ static SymresStatus symres_use(AstUse* use) { } } + package_track_use_package(package->package, use->entity); + return Symres_Success; } @@ -1123,12 +1125,7 @@ void symres_entity(Entity* ent) { case Entity_Type_Foreign_Global_Header: case Entity_Type_Global_Header: ss = symres_global(ent->global); break; - case Entity_Type_Use_Package: ss = symres_use(ent->use); - if (ent->use->expr && ((AstPackage *) ent->use->expr)->package) - package_track_use_package(((AstPackage *) ent->use->expr)->package, ent); - next_state = Entity_State_Finalized; - break; - + case Entity_Type_Use_Package: case Entity_Type_Use: ss = symres_use(ent->use); next_state = Entity_State_Finalized; break;