@TYDQ
The array you presented in your attempted translation has no size; you cannot emulate it using standard methods in pascal.
In C, you can have zero size arrays defined but all this does is allows you to index the memory that is at that immediate location,
basically, overlapping memory that is there without actually allocating space in the RECORD/STRUCT
This is commonly done to allow header information which may contain size info for example of following data in memory.
Have you looked at the solution I provided a few posts back using a Generic that can be expressed with virtually any data type?