title: delphi defining a const multidimensional arrays with mixed static and dynamic elements
body: <p>Is it possible to mix static and dynamic arrays when creating a multidimensional array and then use that to define a const of that type.
  The compiler does not appear to have an issue with the following so I assume its legal to mix dynamic and static arrays like this...</p>
  
  <pre><code>TSoftKeyBase = (skEmptyCommandLine, skChannelsSelected);
  TSoftKeySet = array of array of String;
  TSoftKeys = array[TSoftKeyBase] of TSoftKeySet;
  </code></pre>
  
  <p>When I try to define a const for this array I keep getting "Ordinal type required" on the inner list of elements. Am I pushing beyond the scope of the language?</p>
  
  <pre><code>const
    SOFT_KEYS: TSoftKeys =
        [
          [
            ['Select Previous', 'Page',         'Close',        'SC',             'Park',             'MORE &gt;'],
            ['Output',          'FX',           'Macro',        'Select Active',  'Select Changed',   'MORE &gt;'],
            ['Cue List',        'Re Cue List',  'Load',         'Inclusive Mode', 'Active Sel Mode',  'MORE &gt;'],
            ['If',              'View',         'Scroll To',    '',               '',                 'MORE &gt;']
          ],
          [
            ['Select Previous', 'Last',         'Next',         'Clear Selection','Park',             'MORE &gt;'],
            ['Down %',          'Up %',         'Home',         'Select Active',  'Select Changed',   'MORE &gt;'],
            ['Virtual DSC',     'HiLight',      'LoLight',      'Fan',            'Offset',           'MORE &gt;'],
            ['',                '',             '',             '',               '@ ATTs',           'MORE &gt;']
          ]
        ];
  </code></pre>