diff options
Diffstat (limited to 'src/check_decl.cpp')
| -rw-r--r-- | src/check_decl.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/check_decl.cpp b/src/check_decl.cpp index f05c7cd24..c8070598b 100644 --- a/src/check_decl.cpp +++ b/src/check_decl.cpp @@ -1197,6 +1197,15 @@ void check_proc_body(CheckerContext *ctx_, Token token, DeclInfo *decl, Type *ty ctx->curr_proc_sig = type; ctx->curr_proc_calling_convention = type->Proc.calling_convention; + switch (type->Proc.calling_convention) { + case ProcCC_None: + error(body, "Procedures with the calling convention \"none\" are not allowed a body"); + break; + case ProcCC_PureNone: + error(body, "Procedures with the calling convention \"pure_none\" are not allowed a body"); + break; + } + ast_node(bs, BlockStmt, body); Array<ProcUsingVar> using_entities = {}; |