aboutsummaryrefslogtreecommitdiff
path: root/src/checker/checker.c
diff options
context:
space:
mode:
authorGinger Bill <bill@gingerbill.org>2016-12-16 11:31:08 +0000
committerGinger Bill <bill@gingerbill.org>2016-12-16 11:31:08 +0000
commitf5679832608c93e8ebc2004ffd92fbe174450a01 (patch)
treef7f314d6305f9f92fb72a67db4afa1cff22aa3de /src/checker/checker.c
parentad843141439fc101709dc234c289d5d6d4676aaf (diff)
Semicolons mandatory again (and probably forever now...)
Diffstat (limited to 'src/checker/checker.c')
-rw-r--r--src/checker/checker.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/checker/checker.c b/src/checker/checker.c
index 5bf066c1a..12982f1ac 100644
--- a/src/checker/checker.c
+++ b/src/checker/checker.c
@@ -991,17 +991,22 @@ void init_preload(Checker *c) {
}
if (t_type_info == NULL) {
- Entity *e = current_scope_lookup_entity(c->global_scope, str_lit("Type_Info"));
- if (e == NULL) {
+ Entity *type_info_entity = current_scope_lookup_entity(c->global_scope, str_lit("Type_Info"));
+ if (type_info_entity == NULL) {
compiler_error("Could not find type declaration for `Type_Info`\n"
"Is `runtime.odin` missing from the `core` directory relative to odin.exe?");
}
- t_type_info = e->type;
+ Entity *type_info_member_entity = current_scope_lookup_entity(c->global_scope, str_lit("Type_Info_Member"));
+ if (type_info_entity == NULL) {
+ compiler_error("Could not find type declaration for `Type_Info_Member`\n"
+ "Is `runtime.odin` missing from the `core` directory relative to odin.exe?");
+ }
+ t_type_info = type_info_entity->type;
t_type_info_ptr = make_type_pointer(c->allocator, t_type_info);
- GB_ASSERT(is_type_union(e->type));
- TypeRecord *record = &base_type(e->type)->Record;
+ GB_ASSERT(is_type_union(type_info_entity->type));
+ TypeRecord *record = &base_type(type_info_entity->type)->Record;
- t_type_info_member = record->other_fields[0]->type;
+ t_type_info_member = type_info_member_entity->type;
t_type_info_member_ptr = make_type_pointer(c->allocator, t_type_info_member);
if (record->field_count != 18) {