type ArrayType = array<i32, 4>; struct S { arr : array<i32, 4>; }; fn foo() { let src : ArrayType = ArrayType(); var dst : ArrayType; var dst_struct : S; var dst_array : array<ArrayType, 2>; let dst_ptr : ptr<function, ArrayType> = &dst; let dst_struct_ptr : ptr<function, S> = &dst_struct; let dst_array_ptr : ptr<function, array<ArrayType, 2>> = &dst_array; // Assign to struct.member. dst_struct.arr = src; // Assign to array[index]. dst_array[1] = src; // Assign via pointers. *dst_ptr = src; (*dst_struct_ptr).arr = src; (*dst_array_ptr)[0] = src; }