aboutsummaryrefslogtreecommitdiff
path: root/src/check_decl.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-04-27 13:09:37 +0100
committergingerBill <bill@gingerbill.org>2021-04-27 13:09:37 +0100
commite7e1866e5047a85648e758a2d94c8247c65a6608 (patch)
tree5b837f4cda820adf20f79a78bf86f3c7bd3070a5 /src/check_decl.cpp
parent94fd59e6f0e509f823edd3c90130841510cceb70 (diff)
Fix #893
Diffstat (limited to 'src/check_decl.cpp')
-rw-r--r--src/check_decl.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/check_decl.cpp b/src/check_decl.cpp
index f008317ad..f43248593 100644
--- a/src/check_decl.cpp
+++ b/src/check_decl.cpp
@@ -352,16 +352,17 @@ void override_entity_in_scope(Entity *original_entity, Entity *new_entity) {
string_map_set(&found_scope->elements, original_name, new_entity);
+ original_entity->flags |= EntityFlag_Overridden;
original_entity->type = new_entity->type;
+ original_entity->aliased_of = new_entity;
if (original_entity->identifier == nullptr) {
original_entity->identifier = new_entity->identifier;
}
if (original_entity->identifier != nullptr &&
original_entity->identifier->kind == Ast_Ident) {
- original_entity->identifier->Ident.entity = nullptr;
+ original_entity->identifier->Ident.entity = new_entity;
}
- original_entity->flags |= EntityFlag_Overridden;
// IMPORTANT NOTE(bill, 2021-04-10): copy only the variants
// This is most likely NEVER required, but it does not at all hurt to keep