Are you sure that works?
If you tested it in a sample project, then yes it may seem to work. BUT...
IRC the lfm reader has still a reference to StdCtrls.TMemo. So when reading the LFM, that is created, and memory allocation only gets memory for that.
If you access the extra field, you would (If I am right) access unallocated memory.
That wouldn't immediately cause an error, so it may SEEM to work at first.
But if you have other objects, then you may overwrite them....
It may work, if your app registers the new TMemo with the reader (there is a function to do this). But I have not tested this.
And I certainly do not recommend it.
---------
Besides "Array of TMemo" is not read from LFM? So you could do TMyMemo?
If you do not want to create a TMyMemo, then instead of
Array of TMemo
do
Array of Record
Memo: TMyMemo;
FileName: string;
end;