From 445ed9be2b526de355d7fac550747b25c8fd7f20 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 22 Aug 2021 12:54:04 +0100 Subject: Use multi-pointers when appropriate --- core/runtime/core_builtin.odin | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'core/runtime') diff --git a/core/runtime/core_builtin.odin b/core/runtime/core_builtin.odin index f4dc6aebe..0fc72fd69 100644 --- a/core/runtime/core_builtin.odin +++ b/core/runtime/core_builtin.odin @@ -303,9 +303,9 @@ append_elem :: proc(array: ^$T/[dynamic]$E, arg: E, loc := #caller_location) { if cap(array)-len(array) > 0 { a := (^Raw_Dynamic_Array)(array); when size_of(E) != 0 { - data := (^E)(a.data); + data := ([^]E)(a.data); assert(condition=data != nil, loc=loc); - intrinsics.ptr_offset(data, a.len)^ = arg; + data[a.len] = arg; } a.len += 1; } @@ -331,9 +331,9 @@ append_elems :: proc(array: ^$T/[dynamic]$E, args: ..E, loc := #caller_location) if arg_len > 0 { a := (^Raw_Dynamic_Array)(array); when size_of(E) != 0 { - data := (^E)(a.data); + data := ([^]E)(a.data); assert(condition=data != nil, loc=loc); - intrinsics.mem_copy(intrinsics.ptr_offset(data, a.len), &args[0], size_of(E) * arg_len); + intrinsics.mem_copy(&data[a.len], raw_data(args), size_of(E) * arg_len); } a.len += arg_len; } -- cgit v1.2.3