Hi, consider this piece of code: -- 8< -- snip -- type tA = array[0 .. 5] of byte; tB = array[0 .. 5] of byte; var A : tA; B : tB; begin FillChar (A, SizeOf (A), 0); B := A; // <-- should by type error! A := tA(B); end. -- 8< -- snip --