Use macro instead of loop for Array::build