"A Composite Type larger than 4 bytes, or whose size cannot be
determined statically by both caller and callee, is stored in
memory at an address passed as an extra argument when the function
was called (Parameter Passing, rule A.4). The memory to be used for
the result may be modified at any point during the function call. "
-- да. Но мне непонятно, почему в варианте с циклом он занимается
копированием. Мог бы сразу положить куда нужно. Так возврат
структур (как в abi написано) более эффективен.