aboutsummaryrefslogtreecommitdiff
path: root/src/check_decl.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2018-12-14 21:05:02 +0000
committergingerBill <bill@gingerbill.org>2018-12-14 21:05:02 +0000
commit95873e66ab8cfe6fe7be3842e4a753961fd0bfb3 (patch)
treee8c9a3d699d4971449e0e1aca8aa7e5597b18a74 /src/check_decl.cpp
parentb7eebe5d004380dec34a185bca6e5e343589de69 (diff)
`deferred` procedure attribute
Diffstat (limited to 'src/check_decl.cpp')
-rw-r--r--src/check_decl.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/check_decl.cpp b/src/check_decl.cpp
index 3fb53bb19..6723b6754 100644
--- a/src/check_decl.cpp
+++ b/src/check_decl.cpp
@@ -633,6 +633,11 @@ void check_proc_decl(CheckerContext *ctx, Entity *e, DeclInfo *d) {
e->Procedure.link_name = ac.link_name;
}
+ if (ac.deferred_procedure != nullptr) {
+ e->Procedure.deferred_procedure = ac.deferred_procedure;
+ array_add(&ctx->checker->procs_with_deferred_to_check, e);
+ }
+
if (is_foreign) {
String name = e->token.string;
if (e->Procedure.link_name.len > 0) {