Der Record ist nur eine Definition und es wird ihm kein Speicherplatz zugeordnet. Bei einer Const wird entsprechend irgendwo Speicher bereitgestellt, welcher initialisiert werden kann.
Wenn du nun ein konstantes Array in einem Record definierst, dann gibt es wiederrum keinen Speicherplatz für den Record und somit auch nicht für seine Elemente, also dem Array, somit auch keine Möglichkeit es vorzubelegen.
Schonmal so probiert?
Delphi-Quellcode:
TBla = record
A: Word;
B: array of word;
end;
const
Bla: array [0..1] of TBla = (
(A: 0; B: (0, 1)), //Hier muesste man ja nun immer 256 Elemente initialisieren, ich brauche manchmal aber nur 128
()
);