From 6aa708a455502a016c91eb569e65954427e8bcf8 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Thu, 10 Sep 2020 16:36:33 +0100 Subject: Fix Odin bug with "none" procedure calling conventions in the runtime --- src/check_decl.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/check_decl.cpp') diff --git a/src/check_decl.cpp b/src/check_decl.cpp index c8070598b..639bf7d4f 100644 --- a/src/check_decl.cpp +++ b/src/check_decl.cpp @@ -1197,13 +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; + if (ctx->pkg->name != "runtime") { + 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); -- cgit v1.2.3