From 2237d3b836af4dbab7b27d679ce91d30623a13da Mon Sep 17 00:00:00 2001 From: Christoffer Lerno Date: Wed, 11 Feb 2026 02:55:07 +0100 Subject: [PATCH] Missing check --- src/compiler/sema_expr.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/compiler/sema_expr.c b/src/compiler/sema_expr.c index 65b16e43e..bd9a352e7 100644 --- a/src/compiler/sema_expr.c +++ b/src/compiler/sema_expr.c @@ -6454,6 +6454,11 @@ static inline bool sema_expr_analyse_access(SemaContext *context, Expr *expr, bo ASSERT_SPAN(expr, expr->expr_kind == EXPR_ACCESS_UNRESOLVED); ASSERT_SPAN(expr, parent->resolve_status == RESOLVE_DONE); + if (parent->expr_kind == EXPR_BUILTIN) + { + RETURN_SEMA_ERROR(expr, "A builtin has no support for properties."); + } + // 7. Is this a pointer? If so we insert a deref. Type *underlying_type = type_no_optional(parent->type)->canonical; while (times_to_deref > 0 && underlying_type->type_kind == TYPE_POINTER && underlying_type != type_voidptr)