diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 24ee86810..cd38ff69a 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -10179,6 +10179,10 @@ gb_internal ExprKind check_or_branch_expr(CheckerContext *c, Operand *o, Ast *no } } + if (c->in_defer) { + error(node, "'%.*s' cannot be used within a 'defer'", LIT(name)); + } + return Expr_Expr; }