fix: record/class/set element stride in array data (ArrBodyItems)
QbeGen.ArrBodyItems computed the element stride itself and fell through
to 4 for record/class/set elements, so an ARRAY OF record was emitted
with 4-byte records: overlapping elements, bad field/index access
(arr[i].field read neighbours). It now uses SymTab.TypeSize, mirroring
the Stage-A ElemSize fix.
Repro/regression: t_recarr.mod (ARRAY OF record with a CHAR-array field)
now exits 42. The nested-array-field case (arr[i].field[j][k] with a
nested ARRAY OF ARRAY field) still needs per-element sub-descriptors
(docs/wip/nested-array-field-bug.mod) -- a separate fix.
Gates: suite 183/183; fixpoint OK (stage2 == stage3, 3148993 bytes).