diff --git a/core/intrinsics/intrinsics.odin b/core/intrinsics/intrinsics.odin index 28a178db1..1aeee5d4c 100644 --- a/core/intrinsics/intrinsics.odin +++ b/core/intrinsics/intrinsics.odin @@ -19,7 +19,7 @@ trap :: proc() -> ! --- // Instructions -alloca :: proc(size, align: int) -> ^u8 --- +alloca :: proc(size, align: int) -> [^]u8 --- cpu_relax :: proc() --- read_cycle_counter :: proc() -> i64 --- diff --git a/src/check_builtin.cpp b/src/check_builtin.cpp index ffd622e4a..1f3928bd8 100644 --- a/src/check_builtin.cpp +++ b/src/check_builtin.cpp @@ -2055,7 +2055,7 @@ bool check_builtin_procedure(CheckerContext *c, Operand *operand, Ast *call, i32 error(al.expr, "Alignment parameter to '%.*s' must be constant", LIT(builtin_name)); } - operand->type = t_u8_ptr; + operand->type = alloc_type_multi_pointer(t_u8); operand->mode = Addressing_Value; break; }