From b86dfa7af79a1563b2f47622aeeaedb737eaafb8 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Tue, 13 Aug 2019 22:51:04 +0100 Subject: [PATCH] Fix compiler crash with #defined #417 --- src/check_expr.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 7a6e0f22d..8da6816ac 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -3368,8 +3368,8 @@ bool check_builtin_procedure(CheckerContext *c, Operand *operand, Ast *call, i32 return false; } Ast *arg = unparen_expr(ce->args[0]); - if (arg->kind != Ast_Ident && arg->kind != Ast_SelectorExpr) { - error(call, "'#defined' expects an identifier or selector expression, got %s", LIT(ast_strings[arg->kind])); + if (arg == nullptr || (arg->kind != Ast_Ident && arg->kind != Ast_SelectorExpr)) { + error(call, "'#defined' expects an identifier or selector expression, got %.*s", LIT(ast_strings[arg->kind])); return false; }