diff options
| author | gingerBill <bill@gingerbill.org> | 2024-06-10 15:02:34 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2024-06-10 15:02:34 +0100 |
| commit | fa3cae2bb04db76f52f1b2288a9c858f20332b8a (patch) | |
| tree | 063118fd6e63aab004680be7a87e1a7670fe4a09 /src/check_expr.cpp | |
| parent | 1945218f6df814ea95233035d0b51585e2522b2e (diff) | |
Add `intrinsics.procedure_of`
```odin
foo :: proc(x: $T) { fmt.println(x) }
bar :: intrinsics.procedure_of(foo(int(123))) // parameters are never ran at compile time, similar to `size_of`
bar(333) // prints 333
```
Diffstat (limited to 'src/check_expr.cpp')
| -rw-r--r-- | src/check_expr.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 641f70566..01cba881e 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -578,6 +578,7 @@ gb_internal bool find_or_generate_polymorphic_procedure(CheckerContext *old_c, E d->defer_use_checked = false; Entity *entity = alloc_entity_procedure(nullptr, token, final_proc_type, tags); + entity->state.store(EntityState_Resolved); entity->identifier = ident; add_entity_and_decl_info(&nctx, ident, entity, d); |