Browse Source

`intrinsics.alloca` now returns `[^]u8`

gingerBill 4 years ago
parent
commit
31f779f1a4
2 changed files with 2 additions and 2 deletions
  1. 1 1
      core/intrinsics/intrinsics.odin
  2. 1 1
      src/check_builtin.cpp

+ 1 - 1
core/intrinsics/intrinsics.odin

@@ -19,7 +19,7 @@ trap       :: proc() -> ! ---
 
 
 // Instructions
 // Instructions
 
 
-alloca             :: proc(size, align: int) -> ^u8 ---
+alloca             :: proc(size, align: int) -> [^]u8 ---
 cpu_relax          :: proc() ---
 cpu_relax          :: proc() ---
 read_cycle_counter :: proc() -> i64 ---
 read_cycle_counter :: proc() -> i64 ---
 
 

+ 1 - 1
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));
 				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;
 			operand->mode = Addressing_Value;
 			break;
 			break;
 		}
 		}