Delphi arrays have a few quirks (as mentionned here on TURBU f.i.), which arise from there being actually four different types arrays in Delphi, with limited interoperability: array [low..high] of TSomeType: the bounded array, a value type, useful for structures, fixed-size vectors & matrices, ...
More...