aboutsummaryrefslogtreecommitdiff
path: root/src/check_expr.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2020-03-26 17:41:38 +0000
committerGitHub <noreply@github.com>2020-03-26 17:41:38 +0000
commit6bbecbe895a7b413dee61da772586be4e3138174 (patch)
treea86e716cb2a519a7bff7a320821fbde7abd8673e /src/check_expr.cpp
parent7909872877fd5c82c29df711f160838a7a4e59e1 (diff)
parentb21993a1c470a533a83e5b01274d3b026fb34f9b (diff)
Merge pull request #595 from odin-lang/llvm-integration
LLVM C API Integration
Diffstat (limited to 'src/check_expr.cpp')
-rw-r--r--src/check_expr.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp
index 4fdffcaa3..cda9debfa 100644
--- a/src/check_expr.cpp
+++ b/src/check_expr.cpp
@@ -5675,7 +5675,7 @@ isize add_dependencies_from_unpacking(CheckerContext *c, Entity **lhs, isize lhs
c->decl = decl; // will be reset by the 'defer' any way
for_array(k, decl->deps.entries) {
Entity *dep = decl->deps.entries[k].ptr;
- add_declaration_dependency(c, dep); // TODO(bill): Should this be here?
+ add_declaration_dependency(c, dep); // TODO(bill): Should this be here?
}
}
}
@@ -7257,6 +7257,16 @@ ExprKind check_call_expr(CheckerContext *c, Operand *operand, Ast *call, Type *t
}
Type *pt = base_type(proc_type);
+
+ #if 0
+ if (pt->kind == Type_Proc && pt->Proc.calling_convention == ProcCC_Odin) {
+ init_core_context(c->checker);
+ GB_ASSERT(t_context != nullptr);
+ GB_ASSERT(t_context->kind == Type_Named);
+ add_declaration_dependency(c, t_context->Named.type_name);
+ }
+ #endif
+
if (result_type == nullptr) {
operand->mode = Addressing_NoValue;
} else {
@@ -7680,6 +7690,7 @@ ExprKind check_expr_base_internal(CheckerContext *c, Operand *o, Ast *node, Type
return kind;
}
+ pl->decl = decl;
check_procedure_later(ctx.checker, ctx.file, empty_token, decl, type, pl->body, pl->tags);
}
check_close_scope(&ctx);