Was aber geht, wäre die Bearbeitung des Records in eine eigene Prozedur verlegen
Wenn der Codeblock nur um ein Element des selben Typs aus zwei verschiedenen Quellen behandeln soll, z.B. so:
Delphi-Quellcode:
procedure TuWasMit(var AItem: TMyRecord);
begin
//es folgt noch ein längerer Codeblock mit Variablen,
//die im recordX beider Arrays identisch sind
end;
procedure Test(ABedingung: Boolean; var AGarten: TGartenArray; var AExotic: TExoticArray);
begin
x := 1;
if ABedingung then
TuWasMit(AGarten[x])
else
TuWasMit(AExotic[x]);
end;