~ubuntu-branches/ubuntu/saucy/lazarus/saucy

« back to all changes in this revision

Viewing changes to debugger/test/Gdbmi/TestApps/WatchesPrgArray.inc

  • Committer: Package Import Robot
  • Author(s): Paul Gevers, Abou Al Montacir, Bart Martens, Paul Gevers
  • Date: 2013-06-08 14:12:17 UTC
  • mfrom: (1.1.9)
  • Revision ID: package-import@ubuntu.com-20130608141217-7k0cy9id8ifcnutc
Tags: 1.0.8+dfsg-1
[ Abou Al Montacir ]
* New upstream major release and multiple maintenace release offering many
  fixes and new features marking a new milestone for the Lazarus development
  and its stability level.
  - The detailed list of changes can be found here:
    http://wiki.lazarus.freepascal.org/Lazarus_1.0_release_notes
    http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch
* LCL changes:
  - LCL is now a normal package.
      + Platform independent parts of the LCL are now in the package LCLBase
      + LCL is automatically recompiled when switching the target platform,
        unless pre-compiled binaries for this target are already installed.
      + No impact on existing projects.
      + Linker options needed by LCL are no more added to projects that do
        not use the LCL package.
  - Minor changes in LCL basic classes behaviour
      + TCustomForm.Create raises an exception if a form resource is not
        found.
      + TNotebook and TPage: a new implementation of these classes was added.
      + TDBNavigator: It is now possible to have focusable buttons by setting
        Options = [navFocusableButtons] and TabStop = True, useful for
        accessibility and for devices with neither mouse nor touch screen.
      + Names of TControlBorderSpacing.GetSideSpace and GetSpace were swapped
        and are now consistent. GetSideSpace = Around + GetSpace.
      + TForm.WindowState=wsFullscreen was added
      + TCanvas.TextFitInfo was added to calculate how many characters will
        fit into a specified Width. Useful for word-wrapping calculations.
      + TControl.GetColorResolvingParent and
        TControl.GetRGBColorResolvingParent were added, simplifying the work
        to obtain the final color of the control while resolving clDefault
        and the ParentColor.
      + LCLIntf.GetTextExtentExPoint now has a good default implementation
        which works in any platform not providing a specific implementation.
        However, Widgetset specific implementation is better, when available.
      + TTabControl was reorganized. Now it has the correct class hierarchy
        and inherits from TCustomTabControl as it should.
  - New unit in the LCL:
      + lazdialogs.pas: adds non-native versions of various native dialogs,
        for example TLazOpenDialog, TLazSaveDialog, TLazSelectDirectoryDialog.
        It is used by widgetsets which either do not have a native dialog, or
        do not wish to use it because it is limited. These dialogs can also be
        used by user applications directly.
      + lazdeviceapis.pas: offers an interface to more hardware devices such
        as the accelerometer, GPS, etc. See LazDeviceAPIs
      + lazcanvas.pas: provides a TFPImageCanvas descendent implementing
        drawing in a LCL-compatible way, but 100% in Pascal.
      + lazregions.pas. LazRegions is a wholly Pascal implementation of
        regions for canvas clipping, event clipping, finding in which control
        of a region tree one an event should reach, for drawing polygons, etc.
      + customdrawncontrols.pas, customdrawndrawers.pas,
        customdrawn_common.pas, customdrawn_android.pas and
        customdrawn_winxp.pas: are the Lazarus Custom Drawn Controls -controls
        which imitate the standard LCL ones, but with the difference that they
        are non-native and support skinning.
  - New APIs added to the LCL to improve support of accessibility software
    such as screen readers.
* IDE changes:
  - Many improvments.
  - The detailed list of changes can be found here:
    http://wiki.lazarus.freepascal.org/New_IDE_features_since#v1.0_.282012-08-29.29
    http://wiki.lazarus.freepascal.org/Lazarus_1.0_release_notes#IDE_Changes
* Debugger / Editor changes:
  - Added pascal sources and breakpoints to the disassembler
  - Added threads dialog.
* Components changes:
  - TAChart: many fixes and new features
  - CodeTool: support Delphi style generics and new syntax extensions.
  - AggPas: removed to honor free licencing. (Closes: Bug#708695)
[Bart Martens]
* New debian/watch file fixing issues with upstream RC release.
[Abou Al Montacir]
* Avoid changing files in .pc hidden directory, these are used by quilt for
  internal purpose and could lead to surprises during build.
[Paul Gevers]
* Updated get-orig-source target and it compinion script orig-tar.sh so that they
  repack the source file, allowing bug 708695 to be fixed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
 
2
 
{%region FooFunc}
3
 
  {$IFDEF FooFunc_Param}
4
 
  //procedure FooFunc(
5
 
  {$ENDIF}
6
 
 
7
 
  {$IFDEF FooFunc_Local}
8
 
  //var
9
 
    VarDynIntArray: TDynIntArray;
10
 
    VarStatIntArray: TStatIntArray;
11
 
    VarDynIntArrayA: Array of Integer;
12
 
    VarStatIntArrayA: Array [5..9] of Integer;
13
 
  {$ENDIF}
14
 
 
15
 
  {$IFDEF FooFunc_Body}
16
 
  //begin
17
 
    SetLength(VarDynIntArray,2);
18
 
    SetLength(VarDynIntArrayA,2);
19
 
    VarStatIntArray[5] := 1;
20
 
    VarStatIntArrayA[5] := 1;
21
 
  {$ENDIF}
22
 
{%endregion FooFunc}
23
 
 
24
 
{%region GLOBAL}
25
 
  {$IFDEF Global_Types}
26
 
  //type
27
 
    TDynIntArray = Array of Integer;
28
 
    TStatIntArray = Array [5..9] of Integer;
29
 
  {$ENDIF}
30
 
 
31
 
  {$IFDEF Global_Var}
32
 
  //var
33
 
  {$ENDIF}
34
 
 
35
 
  {$IFDEF Global_Body}
36
 
  //begin
37
 
  {$ENDIF}
38
 
 
39
 
  {$IFDEF Global_Body_NIL}
40
 
  //begin
41
 
  {$ENDIF}
42
 
 
43
 
  {$IFDEF Global_Call_FooFunc}
44
 
  //FooFunc(
45
 
  {$ENDIF}
46
 
{%endregion GLOBAL}
 
1
(* Struture // NEW structure
 
2
  program WatchesPrg;
 
3
 
 
4
  type
 
5
   {$DEFINE Global_Type}
 
6
 
 
7
  {$DEFINE Global_Implementation}
 
8
 
 
9
  procedure FooFuncArray(  {$DEFINE FooFunc_Param}  }
 
10
      {$DEFINE FooFunc_Local}  // type / var
 
11
    begin
 
12
      {$DEFINE FooFunc_Body}
 
13
    end;
 
14
 
 
15
  var
 
16
    {$DEFINE Global_Var}
 
17
 
 
18
  begin
 
19
    {$DEFINE Global_Body}
 
20
    FooFunc(   {$DEFINE Global_Call_FooFunc}   );
 
21
    {$DEFINE Global_Body_NIL}
 
22
    FooFunc(   {$DEFINE Global_Call_FooFunc}   );
 
23
  end;
 
24
 
 
25
*)
 
26
 
 
27
  {%region  TYPE}
 
28
    {$IFDEF Global_Type}
 
29
    //type
 
30
      TObjectInArray = class public foo: Integer; end;
 
31
      TRecordInArray = record foo: Integer; end;
 
32
 
 
33
      TDynIntArray = Array of Integer;
 
34
      PDynIntArray = ^TDynIntArray;
 
35
      TStatIntArray = Array [5..9] of Integer;
 
36
      PStatIntArray = ^TStatIntArray;
 
37
 
 
38
      TDynObjArray = Array of TObjectInArray;
 
39
      PDynObjArray = ^TDynIntArray;
 
40
      TStatObjArray = Array [5..9] of TObjectInArray;
 
41
      PStatObjArray = ^TStatIntArray;
 
42
 
 
43
      TDynRecArray = Array of TRecordInArray;
 
44
      PDynRecArray = ^TDynIntArray;
 
45
      TStatRecArray = Array [5..9] of TRecordInArray;
 
46
      PStatRecArray = ^TStatIntArray;
 
47
 
 
48
      TDynIntArray2 = Array of TDynIntArray;
 
49
 
 
50
 
 
51
    // dyn array with record
 
52
      TRecForArray1 = record  // has NO named pointer to it
 
53
        a : integer;
 
54
        b : integer;
 
55
      end;
 
56
      TRecForArray3 = record  // has NO named pointer to it
 
57
        a : integer;
 
58
        b : integer;
 
59
      end;
 
60
 
 
61
      TDArrayTRec1 = array of TRecForArray1;
 
62
 
 
63
      TRecForArray2 = record  // has named pointer to it
 
64
        c : integer;
 
65
        recs : TDArrayTRec1;
 
66
      end;
 
67
      PRecForArray2 = ^TRecForArray2;
 
68
      TRecForArray4 = record  // has named pointer to it
 
69
        c : integer;
 
70
        recs : TDArrayTRec1;
 
71
      end;
 
72
      PRecForArray4 = ^TRecForArray4;
 
73
 
 
74
      // dyn arrays
 
75
      TDynArrayTRec1      = array of TRecForArray3;
 
76
        TDynArrayTRec1NP  = array of TRecForArray3; // for use as name-less pointer to this
 
77
      TDynArrayPRec1      = array of ^TRecForArray3;
 
78
      TDynDynArrayTRec1   = array of array of TRecForArray1;
 
79
      TDynDynArrayPRec1   = array of array of ^TRecForArray1;
 
80
      TDynStatArrayTRec1  = array of array [3..5] of TRecForArray1;
 
81
      TDynStatArrayPRec1  = array of array [3..5] of ^TRecForArray1;
 
82
 
 
83
      TDynArrayTRec2      = array of TRecForArray4;
 
84
      TDynArrayPRec2      = array of ^TRecForArray4;
 
85
      TDynArrayPPRec2     = array of ^PRecForArray4; // double pointer
 
86
      TDynDynArrayTRec2   = array of array of TRecForArray2;
 
87
      TDynDynArrayPRec2   = array of array of ^TRecForArray2;
 
88
      TDynStatArrayTRec2  = array of array [3..5] of TRecForArray2;
 
89
      TDynStatArrayPRec2  = array of array [3..5] of ^TRecForArray2;
 
90
 
 
91
 
 
92
      // stat arrays
 
93
      TStatArrayTRec1     = array [3..5] of TRecForArray3;
 
94
        TStatArrayTRec1NP = array [3..5] of TRecForArray3; // for use as name-less pointer to this
 
95
      TStatArrayPRec1     = array [3..5] of ^TRecForArray3;
 
96
      TStatDynArrayTRec1  = array [3..5] of array of TRecForArray1;
 
97
      TStatDynArrayPRec1  = array [3..5] of array of ^TRecForArray1;
 
98
      TStatStatArrayTRec1 = array [3..5] of array [3..5] of TRecForArray1;
 
99
      TStatStatArrayPRec1 = array [3..5] of array [3..5] of ^TRecForArray1;
 
100
 
 
101
      TStatArrayTRec2     = array [3..5] of TRecForArray4;
 
102
      TStatArrayPRec2     = array [3..5] of ^TRecForArray4;
 
103
      TStatArrayPPRec2    = array [3..5] of ^PRecForArray4; // double pointer
 
104
      TStatDynArrayTRec2  = array [3..5] of array of TRecForArray2;
 
105
      TStatDynArrayPRec2  = array [3..5] of array of ^TRecForArray2;
 
106
      TStatStatArrayTRec2 = array [3..5] of array [3..5] of TRecForArray2;
 
107
      TStatStatArrayPRec2 = array [3..5] of array [3..5] of ^TRecForArray2;
 
108
 
 
109
 
 
110
      // dyn arrays of named arrays
 
111
      TDynDynTRec1Array   = array of TDynArrayTRec1;
 
112
      TDynDynPRec1Array   = array of TDynArrayPRec1;
 
113
      TDynStatTRec1Array  = array of TStatArrayTRec1;
 
114
      TDynStatPRec1Array  = array of TStatArrayPRec1;
 
115
      TDynPDynTRec1Array   = array of ^TDynArrayTRec1;
 
116
      TDynPStatTRec1Array  = array of ^TStatArrayTRec1;
 
117
      TDynPDynTRec1NPArray = array of ^TDynArrayTRec1NP;
 
118
      TDynPStatTRec1NPArray= array of ^TStatArrayTRec1NP;
 
119
 
 
120
      TDynDynTRec2Array   = array of TDynArrayTRec2;
 
121
      TDynDynPrec2Array   = array of TDynArrayPRec2;
 
122
      TDynDynPPrec2Array  = array of TDynArrayPPRec2; // double pointer
 
123
      TDynStatTRec2Array  = array of TStatArrayTRec2;
 
124
      TDynStatPRec2Array  = array of TStatArrayPRec2;
 
125
      TDynStatPPRec2Array = array of TStatArrayPPRec2; // double pointer
 
126
 
 
127
      // stat arrays of named arrays
 
128
      TStatDynTRec1Array   = array [3..5] of TDynArrayTRec1;
 
129
      TStatDynPrec1Array   = array [3..5] of TDynArrayPRec1;
 
130
      TStatStatTRec1Array  = array [3..5] of TStatArrayTRec1;
 
131
      TStatStatPRec1Array  = array [3..5] of TStatArrayPRec1;
 
132
      TStatPDynTRec1Array   = array [3..5] of ^TDynArrayTRec1;// TODO name-less pointer to an array [3..5]
 
133
      TStatPStatTRec1Array  = array [3..5] of ^TStatArrayTRec1;
 
134
 
 
135
      TStatDynTRec2Array   = array [3..5] of TDynArrayTRec2;
 
136
      TStatDynPrec2Array   = array [3..5] of TDynArrayPRec2;
 
137
      TStatDynPPrec2Array  = array [3..5] of TDynArrayPPRec2; // double pointer
 
138
      TStatStatTRec2Array  = array [3..5] of TStatArrayTRec2;
 
139
      TStatStatPRec2Array  = array [3..5] of TStatArrayPRec2;
 
140
      TStatStatPPRec2Array = array [3..5] of TStatArrayPPRec2; // double pointer
 
141
 
 
142
 
 
143
// POINTER
 
144
 
 
145
      // dyn arrays
 
146
      PDynArrayTRec1      = ^TDynArrayTRec1;
 
147
      PDynArrayPRec1      = ^TDynArrayPRec1;
 
148
      PDynDynArrayTRec1   = ^TDynDynArrayTRec1;
 
149
      PDynDynArrayPRec1   = ^TDynDynArrayPRec1;
 
150
      PDynStatArrayTRec1  = ^TDynStatArrayTRec1;
 
151
      PDynStatArrayPRec1  = ^TDynStatArrayPRec1;
 
152
 
 
153
      PDynArrayTRec2      = ^TDynArrayTRec2;
 
154
      PDynArrayPRec2      = ^TDynArrayPRec2;
 
155
      PDynArrayPPRec2     = ^TDynArrayPPRec2;
 
156
      PDynDynArrayTRec2   = ^TDynDynArrayTRec2;
 
157
      PDynDynArrayPRec2   = ^TDynDynArrayPRec2;
 
158
      PDynStatArrayTRec2  = ^TDynStatArrayTRec2;
 
159
      PDynStatArrayPRec2  = ^TDynStatArrayPRec2;
 
160
 
 
161
 
 
162
      // stat arrays
 
163
      PStatArrayTRec1     = ^TStatArrayTRec1;
 
164
      PStatArrayPRec1     = ^TStatArrayPRec1;
 
165
      PStatDynArrayTRec1  = ^TStatDynArrayTRec1;
 
166
      PStatDynArrayPRec1  = ^TStatDynArrayPRec1;
 
167
      PStatStatArrayTRec1 = ^TStatStatArrayTRec1;
 
168
      PStatStatArrayPRec1 = ^TStatStatArrayPRec1;
 
169
 
 
170
      PStatArrayTRec2     = ^TStatArrayTRec2;
 
171
      PStatArrayPRec2     = ^TStatArrayPRec2;
 
172
      PStatArrayPPRec2    = ^TStatArrayPPRec2;
 
173
      PStatDynArrayTRec2  = ^TStatDynArrayTRec2;
 
174
      PStatDynArrayPRec2  = ^TStatDynArrayPRec2;
 
175
      PStatStatArrayTRec2 = ^TStatStatArrayTRec2;
 
176
      PStatStatArrayPRec2 = ^TStatStatArrayPRec2;
 
177
 
 
178
 
 
179
      // dyn arrays of named arrays
 
180
      PDynDynTRec1Array   = ^TDynDynTRec1Array;
 
181
      PDynDynPrec1Array   = ^TDynDynPrec1Array;
 
182
      PDynStatTRec1Array  = ^TDynStatTRec1Array;
 
183
      PDynStatPRec1Array  = ^TDynStatPRec1Array;
 
184
      PDynPDynTRec1Array  = ^TDynPDynTRec1Array;
 
185
      PDynPStatTRec1Array = ^TDynPStatTRec1Array;
 
186
      PDynPDynTRec1NPArray = ^TDynPDynTRec1NPArray;
 
187
      PDynPStatTRec1NPArray= ^TDynPStatTRec1NPArray;
 
188
 
 
189
      PDynDynTRec2Array   = ^TDynDynTRec2Array;
 
190
      PDynDynPrec2Array   = ^TDynDynPrec2Array;
 
191
      PDynDynPPrec2Array  = ^TDynDynPPrec2Array;
 
192
      PDynStatTRec2Array  = ^TDynStatTRec2Array;
 
193
      PDynStatPRec2Array  = ^TDynStatPRec2Array;
 
194
      PDynStatPPRec2Array = ^TDynStatPPRec2Array;
 
195
 
 
196
      // stat arrays of named arrays
 
197
      PStatDynTRec1Array   = ^TStatDynTRec1Array;
 
198
      PStatDynPrec1Array   = ^TStatDynPrec1Array;
 
199
      PStatStatTRec1Array  = ^TStatStatTRec1Array;
 
200
      PStatStatPRec1Array  = ^TStatStatPRec1Array;
 
201
      PStatPDynTRec1Array  = ^TStatPDynTRec1Array;
 
202
      PStatPStatTRec1Array = ^TStatPStatTRec1Array;
 
203
 
 
204
      PStatDynTRec2Array   = ^TStatDynTRec2Array;
 
205
      PStatDynPrec2Array   = ^TStatDynPrec2Array;
 
206
      PStatDynPPrec2Array  = ^TStatDynPPrec2Array;
 
207
      PStatStatTRec2Array  = ^TStatStatTRec2Array;
 
208
      PStatStatPRec2Array  = ^TStatStatPRec2Array;
 
209
      PStatStatPPRec2Array = ^TStatStatPPRec2Array;
 
210
 
 
211
      TEnunForArray = (eaOne, eaTwo, eaThree);
 
212
      TEnumArrayTRec1     = array [TEnunForArray] of TRecForArray3;
 
213
      TSubEnumArrayTRec1  = array [eaTwo..eaThree] of TRecForArray3;
 
214
      PEnumArrayTRec1     = ^TEnumArrayTRec1;
 
215
      PSubEnumArrayTRec1  = ^TSubEnumArrayTRec1;
 
216
 
 
217
      TStatDualArrayTRec2 = array [3..5, 3..5] of TRecForArray2;
 
218
 
 
219
 
 
220
    {$ENDIF}
 
221
  {%endregion}
 
222
 
 
223
  {%region VARIABLES}
 
224
    {$IFDEF FooFunc_Param}
 
225
    //procedure FooFunc(
 
226
 
 
227
      // dyn arrays
 
228
      ArgTDynArrayTRec1: TDynArrayTRec1;            var VArgTDynArrayTRec1: TDynArrayTRec1;
 
229
      ArgTDynArrayPRec1: TDynArrayPRec1;            var VArgTDynArrayPRec1: TDynArrayPRec1;
 
230
      ArgTDynDynArrayTRec1: TDynDynArrayTRec1;      var VArgTDynDynArrayTRec1: TDynDynArrayTRec1;
 
231
      ArgTDynDynArrayPRec1: TDynDynArrayPRec1;      var VArgTDynDynArrayPRec1: TDynDynArrayPRec1;
 
232
      ArgTDynStatArrayTRec1: TDynStatArrayTRec1;    var VArgTDynStatArrayTRec1: TDynStatArrayTRec1;
 
233
      ArgTDynStatArrayPRec1: TDynStatArrayPRec1;    var VArgTDynStatArrayPRec1: TDynStatArrayPRec1;
 
234
 
 
235
      ArgTDynArrayTRec2: TDynArrayTRec2;            var VArgTDynArrayTRec2: TDynArrayTRec2;
 
236
      ArgTDynArrayPRec2: TDynArrayPRec2;            var VArgTDynArrayPRec2: TDynArrayPRec2;
 
237
      ArgTDynArrayPPRec2: TDynArrayPPRec2;          var VArgTDynArrayPPRec2: TDynArrayPPRec2;
 
238
      ArgTDynDynArrayTRec2: TDynDynArrayTRec2;      var VArgTDynDynArrayTRec2: TDynDynArrayTRec2;
 
239
      ArgTDynDynArrayPRec2: TDynDynArrayPRec2;      var VArgTDynDynArrayPRec2: TDynDynArrayPRec2;
 
240
      ArgTDynStatArrayTRec2: TDynStatArrayTRec2;    var VArgTDynStatArrayTRec2: TDynStatArrayTRec2;
 
241
      ArgTDynStatArrayPRec2: TDynStatArrayPRec2;    var VArgTDynStatArrayPRec2: TDynStatArrayPRec2;
 
242
 
 
243
 
 
244
      // stat arrays
 
245
      ArgTStatArrayTRec1: TStatArrayTRec1;          var VArgTStatArrayTRec1: TStatArrayTRec1;
 
246
      ArgTStatArrayPRec1: TStatArrayPRec1;          var VArgTStatArrayPRec1: TStatArrayPRec1;
 
247
      ArgTStatDynArrayTRec1: TStatDynArrayTRec1;    var VArgTStatDynArrayTRec1: TStatDynArrayTRec1;
 
248
      ArgTStatDynArrayPRec1: TStatDynArrayPRec1;    var VArgTStatDynArrayPRec1: TStatDynArrayPRec1;
 
249
      ArgTStatStatArrayTRec1: TStatStatArrayTRec1;  var VArgTStatStatArrayTRec1: TStatStatArrayTRec1;
 
250
      ArgTStatStatArrayPRec1: TStatStatArrayPRec1;  var VArgTStatStatArrayPRec1: TStatStatArrayPRec1;
 
251
 
 
252
      ArgTStatArrayTRec2: TStatArrayTRec2;          var VArgTStatArrayTRec2: TStatArrayTRec2;
 
253
      ArgTStatArrayPRec2: TStatArrayPRec2;          var VArgTStatArrayPRec2: TStatArrayPRec2;
 
254
      ArgTStatArrayPPRec2: TStatArrayPPRec2;        var VArgTStatArrayPPRec2: TStatArrayPPRec2;
 
255
      ArgTStatDynArrayTRec2: TStatDynArrayTRec2;    var VArgTStatDynArrayTRec2: TStatDynArrayTRec2;
 
256
      ArgTStatDynArrayPRec2: TStatDynArrayPRec2;    var VArgTStatDynArrayPRec2: TStatDynArrayPRec2;
 
257
      ArgTStatStatArrayTRec2: TStatStatArrayTRec2;  var VArgTStatStatArrayTRec2: TStatStatArrayTRec2;
 
258
      ArgTStatStatArrayPRec2: TStatStatArrayPRec2;  var VArgTStatStatArrayPRec2: TStatStatArrayPRec2;
 
259
 
 
260
 
 
261
      // dyn arrays of named arrays
 
262
      ArgTDynDynTRec1Array: TDynDynTRec1Array;      var VArgTDynDynTRec1Array: TDynDynTRec1Array;
 
263
      ArgTDynDynPrec1Array: TDynDynPrec1Array;      var VArgTDynDynPrec1Array: TDynDynPrec1Array;
 
264
      ArgTDynStatTRec1Array: TDynStatTRec1Array;    var VArgTDynStatTRec1Array: TDynStatTRec1Array;
 
265
      ArgTDynStatPRec1Array: TDynStatPRec1Array;    var VArgTDynStatPRec1Array: TDynStatPRec1Array;
 
266
      ArgTDynPDynTRec1Array: TDynPDynTRec1Array;     var VArgTDynPDynTRec1Array: TDynPDynTRec1Array;
 
267
      ArgTDynPStatTRec1Array: TDynPStatTRec1Array;   var VArgTDynPStatTRec1Array: TDynPStatTRec1Array;
 
268
      ArgTDynPDynTRec1NPArray: TDynPDynTRec1NPArray; var VArgTDynPDynTRec1NPArray: TDynPDynTRec1NPArray;
 
269
      ArgTDynPStatTRec1NPArray: TDynPStatTRec1NPArray;var VArgTDynPStatTRec1NPArray: TDynPStatTRec1NPArray;
 
270
 
 
271
      ArgTDynDynTRec2Array: TDynDynTRec2Array;      var VArgTDynDynTRec2Array: TDynDynTRec2Array;
 
272
      ArgTDynDynPrec2Array: TDynDynPrec2Array;      var VArgTDynDynPrec2Array: TDynDynPrec2Array;
 
273
      ArgTDynDynPPrec2Array: TDynDynPPrec2Array;    var VArgTDynDynPPrec2Array: TDynDynPPrec2Array;
 
274
      ArgTDynStatTRec2Array: TDynStatTRec2Array;    var VArgTDynStatTRec2Array: TDynStatTRec2Array;
 
275
      ArgTDynStatPRec2Array: TDynStatPRec2Array;    var VArgTDynStatPRec2Array: TDynStatPRec2Array;
 
276
      ArgTDynStatPPRec2Array: TDynStatPPRec2Array;  var VArgTDynStatPPRec2Array: TDynStatPPRec2Array;
 
277
 
 
278
      // stat arrays of named arrays
 
279
      ArgTStatDynTRec1Array: TStatDynTRec1Array;      var VArgTStatDynTRec1Array: TStatDynTRec1Array;
 
280
      ArgTStatDynPrec1Array: TStatDynPrec1Array;      var VArgTStatDynPrec1Array: TStatDynPrec1Array;
 
281
      ArgTStatStatTRec1Array: TStatStatTRec1Array;    var VArgTStatStatTRec1Array: TStatStatTRec1Array;
 
282
      ArgTStatStatPRec1Array: TStatStatPRec1Array;    var VArgTStatStatPRec1Array: TStatStatPRec1Array;
 
283
      ArgTStatPDynTRec1Array: TStatPDynTRec1Array;     var VArgTStatPDynTRec1Array: TStatPDynTRec1Array;
 
284
      ArgTStatPStatTRec1Array: TStatPStatTRec1Array;   var VArgTStatPStatTRec1Array: TStatPStatTRec1Array;
 
285
 
 
286
      ArgTStatDynTRec2Array: TStatDynTRec2Array;      var VArgTStatDynTRec2Array: TStatDynTRec2Array;
 
287
      ArgTStatDynPrec2Array: TStatDynPrec2Array;      var VArgTStatDynPrec2Array: TStatDynPrec2Array;
 
288
      ArgTStatDynPPrec2Array: TStatDynPPrec2Array;    var VArgTStatDynPPrec2Array: TStatDynPPrec2Array;
 
289
      ArgTStatStatTRec2Array: TStatStatTRec2Array;    var VArgTStatStatTRec2Array: TStatStatTRec2Array;
 
290
      ArgTStatStatPRec2Array: TStatStatPRec2Array;    var VArgTStatStatPRec2Array: TStatStatPRec2Array;
 
291
      ArgTStatStatPPRec2Array: TStatStatPPRec2Array;  var VArgTStatStatPPRec2Array: TStatStatPPRec2Array;
 
292
 
 
293
// POINTER
 
294
 
 
295
      // dyn arrays
 
296
      ArgPDynArrayTRec1: PDynArrayTRec1;            var VArgPDynArrayTRec1: PDynArrayTRec1;
 
297
      ArgPDynArrayPRec1: PDynArrayPRec1;            var VArgPDynArrayPRec1: PDynArrayPRec1;
 
298
      ArgPDynDynArrayTRec1: PDynDynArrayTRec1;      var VArgPDynDynArrayTRec1: PDynDynArrayTRec1;
 
299
      ArgPDynDynArrayPRec1: PDynDynArrayPRec1;      var VArgPDynDynArrayPRec1: PDynDynArrayPRec1;
 
300
      ArgPDynStatArrayTRec1: PDynStatArrayTRec1;    var VArgPDynStatArrayTRec1: PDynStatArrayTRec1;
 
301
      ArgPDynStatArrayPRec1: PDynStatArrayPRec1;    var VArgPDynStatArrayPRec1: PDynStatArrayPRec1;
 
302
 
 
303
      ArgPDynArrayTRec2: PDynArrayTRec2;            var VArgPDynArrayTRec2: PDynArrayTRec2;
 
304
      ArgPDynArrayPRec2: PDynArrayPRec2;            var VArgPDynArrayPRec2: PDynArrayPRec2;
 
305
      ArgPDynArrayPPRec2: PDynArrayPPRec2;          var VArgPDynArrayPPRec2: PDynArrayPPRec2;
 
306
      ArgPDynDynArrayTRec2: PDynDynArrayTRec2;      var VArgPDynDynArrayTRec2: PDynDynArrayTRec2;
 
307
      ArgPDynDynArrayPRec2: PDynDynArrayPRec2;      var VArgPDynDynArrayPRec2: PDynDynArrayPRec2;
 
308
      ArgPDynStatArrayTRec2: PDynStatArrayTRec2;    var VArgPDynStatArrayTRec2: PDynStatArrayTRec2;
 
309
      ArgPDynStatArrayPRec2: PDynStatArrayPRec2;    var VArgPDynStatArrayPRec2: PDynStatArrayPRec2;
 
310
 
 
311
 
 
312
      // stat arrays
 
313
      ArgPStatArrayTRec1: PStatArrayTRec1;          var VArgPStatArrayTRec1: PStatArrayTRec1;
 
314
      ArgPStatArrayPRec1: PStatArrayPRec1;          var VArgPStatArrayPRec1: PStatArrayPRec1;
 
315
      ArgPStatDynArrayTRec1: PStatDynArrayTRec1;    var VArgPStatDynArrayTRec1: PStatDynArrayTRec1;
 
316
      ArgPStatDynArrayPRec1: PStatDynArrayPRec1;    var VArgPStatDynArrayPRec1: PStatDynArrayPRec1;
 
317
      ArgPStatStatArrayTRec1: PStatStatArrayTRec1;  var VArgPStatStatArrayTRec1: PStatStatArrayTRec1;
 
318
      ArgPStatStatArrayPRec1: PStatStatArrayPRec1;  var VArgPStatStatArrayPRec1: PStatStatArrayPRec1;
 
319
 
 
320
      ArgPStatArrayTRec2: PStatArrayTRec2;          var VArgPStatArrayTRec2: PStatArrayTRec2;
 
321
      ArgPStatArrayPRec2: PStatArrayPRec2;          var VArgPStatArrayPRec2: PStatArrayPRec2;
 
322
      ArgPStatArrayPPRec2: PStatArrayPPRec2;        var VArgPStatArrayPPRec2: PStatArrayPPRec2;
 
323
      ArgPStatDynArrayTRec2: PStatDynArrayTRec2;    var VArgPStatDynArrayTRec2: PStatDynArrayTRec2;
 
324
      ArgPStatDynArrayPRec2: PStatDynArrayPRec2;    var VArgPStatDynArrayPRec2: PStatDynArrayPRec2;
 
325
      ArgPStatStatArrayTRec2: PStatStatArrayTRec2;  var VArgPStatStatArrayTRec2: PStatStatArrayTRec2;
 
326
      ArgPStatStatArrayPRec2: PStatStatArrayPRec2;  var VArgPStatStatArrayPRec2: PStatStatArrayPRec2;
 
327
 
 
328
 
 
329
      // dyn arrays of named arrays
 
330
      ArgPDynDynTRec1Array: PDynDynTRec1Array;      var VArgPDynDynTRec1Array: PDynDynTRec1Array;
 
331
      ArgPDynDynPrec1Array: PDynDynPrec1Array;      var VArgPDynDynPrec1Array: PDynDynPrec1Array;
 
332
      ArgPDynStatTRec1Array: PDynStatTRec1Array;    var VArgPDynStatTRec1Array: PDynStatTRec1Array;
 
333
      ArgPDynStatPRec1Array: PDynStatPRec1Array;    var VArgPDynStatPRec1Array: PDynStatPRec1Array;
 
334
      ArgPDynPDynTRec1Array: PDynPDynTRec1Array;     var VArgPDynPDynTRec1Array: PDynPDynTRec1Array;
 
335
      ArgPDynPStatTRec1Array: PDynPStatTRec1Array;   var VArgPDynPStatTRec1Array: PDynPStatTRec1Array;
 
336
      ArgPDynPDynTRec1NPArray: PDynPDynTRec1NPArray;  var VArgPDynPDynTRec1NPArray: PDynPDynTRec1NPArray;
 
337
      ArgPDynPStatTRec1NPArray: PDynPStatTRec1NPArray;var VArgPDynPStatTRec1NPArray: PDynPStatTRec1NPArray;
 
338
 
 
339
      ArgPDynDynTRec2Array: PDynDynTRec2Array;      var VArgPDynDynTRec2Array: PDynDynTRec2Array;
 
340
      ArgPDynDynPrec2Array: PDynDynPrec2Array;      var VArgPDynDynPrec2Array: PDynDynPrec2Array;
 
341
      ArgPDynDynPPrec2Array: PDynDynPPrec2Array;    var VArgPDynDynPPrec2Array: PDynDynPPrec2Array;
 
342
      ArgPDynStatTRec2Array: PDynStatTRec2Array;    var VArgPDynStatTRec2Array: PDynStatTRec2Array;
 
343
      ArgPDynStatPRec2Array: PDynStatPRec2Array;    var VArgPDynStatPRec2Array: PDynStatPRec2Array;
 
344
      ArgPDynStatPPRec2Array: PDynStatPPRec2Array;  var VArgPDynStatPPRec2Array: PDynStatPPRec2Array;
 
345
 
 
346
      // stat arrays of named arrays
 
347
      ArgPStatDynTRec1Array: PStatDynTRec1Array;      var VArgPStatDynTRec1Array: PStatDynTRec1Array;
 
348
      ArgPStatDynPrec1Array: PStatDynPrec1Array;      var VArgPStatDynPrec1Array: PStatDynPrec1Array;
 
349
      ArgPStatStatTRec1Array: PStatStatTRec1Array;    var VArgPStatStatTRec1Array: PStatStatTRec1Array;
 
350
      ArgPStatStatPRec1Array: PStatStatPRec1Array;    var VArgPStatStatPRec1Array: PStatStatPRec1Array;
 
351
      ArgPStatPDynTRec1Array: PStatPDynTRec1Array;     var VArgPStatPDynTRec1Array: PStatPDynTRec1Array;
 
352
      ArgPStatPStatTRec1Array: PStatPStatTRec1Array;   var VArgPStatPStatTRec1Array: PStatPStatTRec1Array;
 
353
 
 
354
      ArgPStatDynTRec2Array: PStatDynTRec2Array;      var VArgPStatDynTRec2Array: PStatDynTRec2Array;
 
355
      ArgPStatDynPrec2Array: PStatDynPrec2Array;      var VArgPStatDynPrec2Array: PStatDynPrec2Array;
 
356
      ArgPStatDynPPrec2Array: PStatDynPPrec2Array;    var VArgPStatDynPPrec2Array: PStatDynPPrec2Array;
 
357
      ArgPStatStatTRec2Array: PStatStatTRec2Array;    var VArgPStatStatTRec2Array: PStatStatTRec2Array;
 
358
      ArgPStatStatPRec2Array: PStatStatPRec2Array;    var VArgPStatStatPRec2Array: PStatStatPRec2Array;
 
359
      ArgPStatStatPPRec2Array: PStatStatPPRec2Array;  var VArgPStatStatPPRec2Array: PStatStatPPRec2Array;
 
360
 
 
361
    {$ENDIF}
 
362
    {$IFDEF Global_Call_FooFunc}
 
363
    //FooFunc(
 
364
      // dyn arrays
 
365
      GlobTDynArrayTRec1,  GlobTDynArrayTRec1,
 
366
      GlobTDynArrayPRec1,  GlobTDynArrayPRec1,
 
367
      GlobTDynDynArrayTRec1,  GlobTDynDynArrayTRec1,
 
368
      GlobTDynDynArrayPRec1,  GlobTDynDynArrayPRec1,
 
369
      GlobTDynStatArrayTRec1,  GlobTDynStatArrayTRec1,
 
370
      GlobTDynStatArrayPRec1,  GlobTDynStatArrayPRec1,
 
371
 
 
372
      GlobTDynArrayTRec2,  GlobTDynArrayTRec2,
 
373
      GlobTDynArrayPRec2,  GlobTDynArrayPRec2,
 
374
      GlobTDynArrayPPRec2,  GlobTDynArrayPPRec2,
 
375
      GlobTDynDynArrayTRec2,  GlobTDynDynArrayTRec2,
 
376
      GlobTDynDynArrayPRec2,  GlobTDynDynArrayPRec2,
 
377
      GlobTDynStatArrayTRec2,  GlobTDynStatArrayTRec2,
 
378
      GlobTDynStatArrayPRec2,  GlobTDynStatArrayPRec2,
 
379
 
 
380
 
 
381
      // stat arrays
 
382
      GlobTStatArrayTRec1,  GlobTStatArrayTRec1,
 
383
      GlobTStatArrayPRec1,  GlobTStatArrayPRec1,
 
384
      GlobTStatDynArrayTRec1,  GlobTStatDynArrayTRec1,
 
385
      GlobTStatDynArrayPRec1,  GlobTStatDynArrayPRec1,
 
386
      GlobTStatStatArrayTRec1,  GlobTStatStatArrayTRec1,
 
387
      GlobTStatStatArrayPRec1,  GlobTStatStatArrayPRec1,
 
388
 
 
389
      GlobTStatArrayTRec2,  GlobTStatArrayTRec2,
 
390
      GlobTStatArrayPRec2,  GlobTStatArrayPRec2,
 
391
      GlobTStatArrayPPRec2,  GlobTStatArrayPPRec2,
 
392
      GlobTStatDynArrayTRec2,  GlobTStatDynArrayTRec2,
 
393
      GlobTStatDynArrayPRec2,  GlobTStatDynArrayPRec2,
 
394
      GlobTStatStatArrayTRec2,  GlobTStatStatArrayTRec2,
 
395
      GlobTStatStatArrayPRec2,  GlobTStatStatArrayPRec2,
 
396
 
 
397
 
 
398
      // dyn arrays of named arrays
 
399
      GlobTDynDynTRec1Array,  GlobTDynDynTRec1Array,
 
400
      GlobTDynDynPrec1Array,  GlobTDynDynPrec1Array,
 
401
      GlobTDynStatTRec1Array,  GlobTDynStatTRec1Array,
 
402
      GlobTDynStatPRec1Array,  GlobTDynStatPRec1Array,
 
403
      GlobTDynPDynTRec1Array,  GlobTDynPDynTRec1Array,
 
404
      GlobTDynPStatTRec1Array,  GlobTDynPStatTRec1Array,
 
405
      GlobTDynPDynTRec1NPArray, GlobTDynPDynTRec1NPArray,
 
406
      GlobTDynPStatTRec1NPArray, GlobTDynPStatTRec1NPArray,
 
407
 
 
408
      GlobTDynDynTRec2Array,  GlobTDynDynTRec2Array,
 
409
      GlobTDynDynPrec2Array,  GlobTDynDynPrec2Array,
 
410
      GlobTDynDynPPrec2Array,  GlobTDynDynPPrec2Array,
 
411
      GlobTDynStatTRec2Array,  GlobTDynStatTRec2Array,
 
412
      GlobTDynStatPRec2Array,  GlobTDynStatPRec2Array,
 
413
      GlobTDynStatPPRec2Array,  GlobTDynStatPPRec2Array,
 
414
 
 
415
      // stat arrays of named arrays
 
416
      GlobTStatDynTRec1Array,  GlobTStatDynTRec1Array,
 
417
      GlobTStatDynPrec1Array,  GlobTStatDynPrec1Array,
 
418
      GlobTStatStatTRec1Array,  GlobTStatStatTRec1Array,
 
419
      GlobTStatStatPRec1Array,  GlobTStatStatPRec1Array,
 
420
      GlobTStatPDynTRec1Array,  GlobTStatPDynTRec1Array,
 
421
      GlobTStatPStatTRec1Array,  GlobTStatPStatTRec1Array,
 
422
 
 
423
      GlobTStatDynTRec2Array,  GlobTStatDynTRec2Array,
 
424
      GlobTStatDynPrec2Array,  GlobTStatDynPrec2Array,
 
425
      GlobTStatDynPPrec2Array,  GlobTStatDynPPrec2Array,
 
426
      GlobTStatStatTRec2Array,  GlobTStatStatTRec2Array,
 
427
      GlobTStatStatPRec2Array,  GlobTStatStatPRec2Array,
 
428
      GlobTStatStatPPRec2Array,  GlobTStatStatPPRec2Array,
 
429
 
 
430
 
 
431
      // POINTER
 
432
 
 
433
      // dyn arrays
 
434
      GlobPDynArrayTRec1,  GlobPDynArrayTRec1,
 
435
      GlobPDynArrayPRec1,  GlobPDynArrayPRec1,
 
436
      GlobPDynDynArrayTRec1,  GlobPDynDynArrayTRec1,
 
437
      GlobPDynDynArrayPRec1,  GlobPDynDynArrayPRec1,
 
438
      GlobPDynStatArrayTRec1,  GlobPDynStatArrayTRec1,
 
439
      GlobPDynStatArrayPRec1,  GlobPDynStatArrayPRec1,
 
440
 
 
441
      GlobPDynArrayTRec2,  GlobPDynArrayTRec2,
 
442
      GlobPDynArrayPRec2,  GlobPDynArrayPRec2,
 
443
      GlobPDynArrayPPRec2,  GlobPDynArrayPPRec2,
 
444
      GlobPDynDynArrayTRec2,  GlobPDynDynArrayTRec2,
 
445
      GlobPDynDynArrayPRec2,  GlobPDynDynArrayPRec2,
 
446
      GlobPDynStatArrayTRec2,  GlobPDynStatArrayTRec2,
 
447
      GlobPDynStatArrayPRec2,  GlobPDynStatArrayPRec2,
 
448
 
 
449
 
 
450
      // stat arrays
 
451
      GlobPStatArrayTRec1,  GlobPStatArrayTRec1,
 
452
      GlobPStatArrayPRec1,  GlobPStatArrayPRec1,
 
453
      GlobPStatDynArrayTRec1,  GlobPStatDynArrayTRec1,
 
454
      GlobPStatDynArrayPRec1,  GlobPStatDynArrayPRec1,
 
455
      GlobPStatStatArrayTRec1,  GlobPStatStatArrayTRec1,
 
456
      GlobPStatStatArrayPRec1,  GlobPStatStatArrayPRec1,
 
457
 
 
458
      GlobPStatArrayTRec2,  GlobPStatArrayTRec2,
 
459
      GlobPStatArrayPRec2,  GlobPStatArrayPRec2,
 
460
      GlobPStatArrayPPRec2,  GlobPStatArrayPPRec2,
 
461
      GlobPStatDynArrayTRec2,  GlobPStatDynArrayTRec2,
 
462
      GlobPStatDynArrayPRec2,  GlobPStatDynArrayPRec2,
 
463
      GlobPStatStatArrayTRec2,  GlobPStatStatArrayTRec2,
 
464
      GlobPStatStatArrayPRec2,  GlobPStatStatArrayPRec2,
 
465
 
 
466
      // dyn arrays of named arrays
 
467
      GlobPDynDynTRec1Array,  GlobPDynDynTRec1Array,
 
468
      GlobPDynDynPrec1Array,  GlobPDynDynPrec1Array,
 
469
      GlobPDynStatTRec1Array,  GlobPDynStatTRec1Array,
 
470
      GlobPDynStatPRec1Array,  GlobPDynStatPRec1Array,
 
471
      GlobPDynPDynTRec1Array,  GlobPDynPDynTRec1Array,
 
472
      GlobPDynPStatTRec1Array,  GlobPDynPStatTRec1Array,
 
473
      GlobPDynPDynTRec1NPArray, GlobPDynPDynTRec1NPArray,
 
474
      GlobPDynPStatTRec1NPArray, GlobPDynPStatTRec1NPArray,
 
475
 
 
476
      GlobPDynDynTRec2Array,  GlobPDynDynTRec2Array,
 
477
      GlobPDynDynPrec2Array,  GlobPDynDynPrec2Array,
 
478
      GlobPDynDynPPrec2Array,  GlobPDynDynPPrec2Array,
 
479
      GlobPDynStatTRec2Array,  GlobPDynStatTRec2Array,
 
480
      GlobPDynStatPRec2Array,  GlobPDynStatPRec2Array,
 
481
      GlobPDynStatPPRec2Array,  GlobPDynStatPPRec2Array,
 
482
 
 
483
      // stat arrays of named arrays
 
484
      GlobPStatDynTRec1Array,  GlobPStatDynTRec1Array,
 
485
      GlobPStatDynPrec1Array,  GlobPStatDynPrec1Array,
 
486
      GlobPStatStatTRec1Array,  GlobPStatStatTRec1Array,
 
487
      GlobPStatStatPRec1Array,  GlobPStatStatPRec1Array,
 
488
      GlobPStatPDynTRec1Array,  GlobPStatPDynTRec1Array,
 
489
      GlobPStatPStatTRec1Array,  GlobPStatPStatTRec1Array,
 
490
 
 
491
      GlobPStatDynTRec2Array,  GlobPStatDynTRec2Array,
 
492
      GlobPStatDynPrec2Array,  GlobPStatDynPrec2Array,
 
493
      GlobPStatDynPPrec2Array,  GlobPStatDynPPrec2Array,
 
494
      GlobPStatStatTRec2Array,  GlobPStatStatTRec2Array,
 
495
      GlobPStatStatPRec2Array,  GlobPStatStatPRec2Array,
 
496
      GlobPStatStatPPRec2Array,  GlobPStatStatPPRec2Array,
 
497
 
 
498
    {$ENDIF}
 
499
 
 
500
    {$IFDEF FooFunc_Local}
 
501
    var
 
502
      VarArrayHelperI: Integer;
 
503
 
 
504
      VarDynIntArray: TDynIntArray;
 
505
      VarDynIntArrayP: ^TDynIntArray;
 
506
      VarStatIntArray: TStatIntArray;
 
507
      VarPDynIntArray: PDynIntArray;
 
508
      VarPStatIntArray: PStatIntArray;
 
509
      VarDynIntArrayA: Array of Integer;
 
510
      VarStatIntArrayA: Array [5..9] of Integer;
 
511
 
 
512
      VarDynObjArray: TDynObjArray;
 
513
      VarStatObjArray: TStatObjArray;
 
514
      VarPDynObjArray: PDynObjArray;
 
515
      VarPStatObjArray: PStatObjArray;
 
516
      VarDynObjArrayA: Array of TObjectInArray;
 
517
      VarStatObjArrayA: Array [5..9] of TObjectInArray;
 
518
 
 
519
      VarDynRecArray: TDynRecArray;
 
520
      VarStatRecArray: TStatRecArray;
 
521
      VarPDynRecArray: PDynRecArray;
 
522
      VarPStatRecArray: PStatRecArray;
 
523
      VarDynRecArrayA: Array of TRecordInArray;
 
524
      VarStatRecArrayA: Array [5..9] of TRecordInArray;
 
525
 
 
526
      VarDynIntArray2: TDynIntArray2;
 
527
 
 
528
      VarDynIntArray2A: Array of TDynIntArray;
 
529
      VarStatIntArray2A: Array [5..9] of TDynIntArray;
 
530
      VarDynIntArray2P: Array of PDynIntArray;
 
531
      VarStatIntArray2P: Array [5..9] of PDynIntArray;
 
532
 
 
533
    {$ENDIF}
 
534
 
 
535
    {$IFDEF Global_Var}
 
536
    //var
 
537
  // dyn array with record
 
538
    myRec2 : PRecForArray2;
 
539
 
 
540
      // target for pointer
 
541
      GlobTDynArrayTRec1NP, GlobTDynArrayTRec1NP2: TDynArrayTRec1NP;
 
542
      GlobTStatArrayTRec1NP, GlobTStatArrayTRec1NP2: TStatArrayTRec1NP;
 
543
 
 
544
      // dyn arrays
 
545
      GlobTDynArrayTRec1: TDynArrayTRec1;
 
546
      GlobTDynArrayPRec1: TDynArrayPRec1;
 
547
      GlobTDynDynArrayTRec1: TDynDynArrayTRec1;
 
548
      GlobTDynDynArrayPRec1: TDynDynArrayPRec1;
 
549
      GlobTDynStatArrayTRec1: TDynStatArrayTRec1;
 
550
      GlobTDynStatArrayPRec1: TDynStatArrayPRec1;
 
551
 
 
552
      GlobTDynArrayTRec2: TDynArrayTRec2;
 
553
      GlobTDynArrayPRec2: TDynArrayPRec2;
 
554
      GlobTDynArrayPPRec2: TDynArrayPPRec2;
 
555
      GlobTDynDynArrayTRec2: TDynDynArrayTRec2;
 
556
      GlobTDynDynArrayPRec2: TDynDynArrayPRec2;
 
557
      GlobTDynStatArrayTRec2: TDynStatArrayTRec2;
 
558
      GlobTDynStatArrayPRec2: TDynStatArrayPRec2;
 
559
 
 
560
 
 
561
      // stat arrays
 
562
      GlobTStatArrayTRec1: TStatArrayTRec1;
 
563
      GlobTStatArrayPRec1: TStatArrayPRec1;
 
564
      GlobTStatDynArrayTRec1: TStatDynArrayTRec1;
 
565
      GlobTStatDynArrayPRec1: TStatDynArrayPRec1;
 
566
      GlobTStatStatArrayTRec1: TStatStatArrayTRec1;
 
567
      GlobTStatStatArrayPRec1: TStatStatArrayPRec1;
 
568
 
 
569
      GlobTStatArrayTRec2: TStatArrayTRec2;
 
570
      GlobTStatArrayPRec2: TStatArrayPRec2;
 
571
      GlobTStatArrayPPRec2: TStatArrayPPRec2;
 
572
      GlobTStatDynArrayTRec2: TStatDynArrayTRec2;
 
573
      GlobTStatDynArrayPRec2: TStatDynArrayPRec2;
 
574
      GlobTStatStatArrayTRec2: TStatStatArrayTRec2;
 
575
      GlobTStatStatArrayPRec2: TStatStatArrayPRec2;
 
576
 
 
577
      // dyn arrays of named arrays
 
578
      GlobTDynDynTRec1Array: TDynDynTRec1Array;
 
579
      GlobTDynDynPrec1Array: TDynDynPrec1Array;
 
580
      GlobTDynStatTRec1Array: TDynStatTRec1Array;
 
581
      GlobTDynStatPRec1Array: TDynStatPRec1Array;
 
582
      GlobTDynPDynTRec1Array: TDynPDynTRec1Array;
 
583
      GlobTDynPStatTRec1Array: TDynPStatTRec1Array;
 
584
      GlobTDynPDynTRec1NPArray: TDynPDynTRec1NPArray;
 
585
      GlobTDynPStatTRec1NPArray: TDynPStatTRec1NPArray;
 
586
 
 
587
      GlobTDynDynTRec2Array: TDynDynTRec2Array;
 
588
      GlobTDynDynPrec2Array: TDynDynPrec2Array;
 
589
      GlobTDynDynPPrec2Array: TDynDynPPrec2Array;
 
590
      GlobTDynStatTRec2Array: TDynStatTRec2Array;
 
591
      GlobTDynStatPRec2Array: TDynStatPRec2Array;
 
592
      GlobTDynStatPPRec2Array: TDynStatPPRec2Array;
 
593
 
 
594
      // stat arrays of named arrays
 
595
      GlobTStatDynTRec1Array: TStatDynTRec1Array;
 
596
      GlobTStatDynPrec1Array: TStatDynPrec1Array;
 
597
      GlobTStatStatTRec1Array: TStatStatTRec1Array;
 
598
      GlobTStatStatPRec1Array: TStatStatPRec1Array;
 
599
      GlobTStatPDynTRec1Array: TStatPDynTRec1Array;
 
600
      GlobTStatPStatTRec1Array: TStatPStatTRec1Array;
 
601
 
 
602
      GlobTStatDynTRec2Array: TStatDynTRec2Array;
 
603
      GlobTStatDynPrec2Array: TStatDynPrec2Array;
 
604
      GlobTStatDynPPrec2Array: TStatDynPPrec2Array;
 
605
      GlobTStatStatTRec2Array: TStatStatTRec2Array;
 
606
      GlobTStatStatPRec2Array: TStatStatPRec2Array;
 
607
      GlobTStatStatPPRec2Array: TStatStatPPRec2Array;
 
608
 
 
609
 
 
610
      GlobTEnumArrayTRec1:     TEnumArrayTRec1;      // = array [TEnunForArray] of TRecForArray3;
 
611
      GlobTSubEnumArrayTRec1:  TSubEnumArrayTRec1;   //  = array [eaTwo..eaThree] of TRecForArray3;
 
612
 
 
613
      GlobTStatDualArrayTRec2: TStatDualArrayTRec2;  // = array [3..5, 3..5] of TRecForArray2;
 
614
 
 
615
// POINTER
 
616
 
 
617
      // dyn arrays
 
618
      GlobPDynArrayTRec1: PDynArrayTRec1;
 
619
      GlobPDynArrayPRec1: PDynArrayPRec1;
 
620
      GlobPDynDynArrayTRec1: PDynDynArrayTRec1;
 
621
      GlobPDynDynArrayPRec1: PDynDynArrayPRec1;
 
622
      GlobPDynStatArrayTRec1: PDynStatArrayTRec1;
 
623
      GlobPDynStatArrayPRec1: PDynStatArrayPRec1;
 
624
 
 
625
      GlobPDynArrayTRec2: PDynArrayTRec2;
 
626
      GlobPDynArrayPRec2: PDynArrayPRec2;
 
627
      GlobPDynArrayPPRec2: PDynArrayPPRec2;
 
628
      GlobPDynDynArrayTRec2: PDynDynArrayTRec2;
 
629
      GlobPDynDynArrayPRec2: PDynDynArrayPRec2;
 
630
      GlobPDynStatArrayTRec2: PDynStatArrayTRec2;
 
631
      GlobPDynStatArrayPRec2: PDynStatArrayPRec2;
 
632
 
 
633
 
 
634
      // stat arrays
 
635
      GlobPStatArrayTRec1: PStatArrayTRec1;
 
636
      GlobPStatArrayPRec1: PStatArrayPRec1;
 
637
      GlobPStatDynArrayTRec1: PStatDynArrayTRec1;
 
638
      GlobPStatDynArrayPRec1: PStatDynArrayPRec1;
 
639
      GlobPStatStatArrayTRec1: PStatStatArrayTRec1;
 
640
      GlobPStatStatArrayPRec1: PStatStatArrayPRec1;
 
641
 
 
642
      GlobPStatArrayTRec2: PStatArrayTRec2;
 
643
      GlobPStatArrayPRec2: PStatArrayPRec2;
 
644
      GlobPStatArrayPPRec2: PStatArrayPPRec2;
 
645
      GlobPStatDynArrayTRec2: PStatDynArrayTRec2;
 
646
      GlobPStatDynArrayPRec2: PStatDynArrayPRec2;
 
647
      GlobPStatStatArrayTRec2: PStatStatArrayTRec2;
 
648
      GlobPStatStatArrayPRec2: PStatStatArrayPRec2;
 
649
 
 
650
      // dyn arrays of named arrays
 
651
      GlobPDynDynTRec1Array: PDynDynTRec1Array;
 
652
      GlobPDynDynPrec1Array: PDynDynPrec1Array;
 
653
      GlobPDynStatTRec1Array: PDynStatTRec1Array;
 
654
      GlobPDynStatPRec1Array: PDynStatPRec1Array;
 
655
      GlobPDynPDynTRec1Array: PDynPDynTRec1Array;
 
656
      GlobPDynPStatTRec1Array: PDynPStatTRec1Array;
 
657
      GlobPDynPDynTRec1NPArray: PDynPDynTRec1NPArray;
 
658
      GlobPDynPStatTRec1NPArray: PDynPStatTRec1NPArray;
 
659
 
 
660
      GlobPDynDynTRec2Array: PDynDynTRec2Array;
 
661
      GlobPDynDynPrec2Array: PDynDynPrec2Array;
 
662
      GlobPDynDynPPrec2Array: PDynDynPPrec2Array;
 
663
      GlobPDynStatTRec2Array: PDynStatTRec2Array;
 
664
      GlobPDynStatPRec2Array: PDynStatPRec2Array;
 
665
      GlobPDynStatPPRec2Array: PDynStatPPRec2Array;
 
666
 
 
667
      // dyn arrays of named arrays
 
668
      GlobPStatDynTRec1Array: PStatDynTRec1Array;
 
669
      GlobPStatDynPrec1Array: PStatDynPrec1Array;
 
670
      GlobPStatStatTRec1Array: PStatStatTRec1Array;
 
671
      GlobPStatStatPRec1Array: PStatStatPRec1Array;
 
672
      GlobPStatPDynTRec1Array: PStatPDynTRec1Array;
 
673
      GlobPStatPStatTRec1Array: PStatPStatTRec1Array;
 
674
 
 
675
      GlobPStatDynTRec2Array: PStatDynTRec2Array;
 
676
      GlobPStatDynPrec2Array: PStatDynPrec2Array;
 
677
      GlobPStatDynPPrec2Array: PStatDynPPrec2Array;
 
678
      GlobPStatStatTRec2Array: PStatStatTRec2Array;
 
679
      GlobPStatStatPRec2Array: PStatStatPRec2Array;
 
680
      GlobPStatStatPPRec2Array: PStatStatPPRec2Array;
 
681
 
 
682
      GlobPEnumArrayTRec1:     PEnumArrayTRec1;      // = ^TEnumArrayTRec1;
 
683
      GlobPSubEnumArrayTRec1:  PSubEnumArrayTRec1;   // = ^TSubEnumArrayTRec1;
 
684
 
 
685
// UN-NAMED types
 
686
      // dyn arrays
 
687
      GlobADynArrayTRec1      : array of TRecForArray3;
 
688
      GlobADynArrayPRec1      : array of ^TRecForArray3;
 
689
      GlobADynDynArrayTRec1   : array of array of TRecForArray1;
 
690
      GlobADynDynArrayPRec1   : array of array of ^TRecForArray1;
 
691
      GlobADynStatArrayTRec1  : array of array [3..5] of TRecForArray1;
 
692
      GlobADynStatArrayPRec1  : array of array [3..5] of ^TRecForArray1;
 
693
 
 
694
      GlobADynArrayTRec2      : array of TRecForArray4;
 
695
      GlobADynArrayPRec2      : array of ^TRecForArray4;
 
696
      GlobADynArrayPPRec2     : array of ^PRecForArray4; // double pointer
 
697
      GlobADynDynArrayTRec2   : array of array of TRecForArray2;
 
698
      GlobADynDynArrayPRec2   : array of array of ^TRecForArray2;
 
699
      GlobADynStatArrayTRec2  : array of array [3..5] of TRecForArray2;
 
700
      GlobADynStatArrayPRec2  : array of array [3..5] of ^TRecForArray2;
 
701
 
 
702
 
 
703
      // stat arrays
 
704
      GlobAStatArrayTRec1     : array [3..5] of TRecForArray3;
 
705
      GlobAStatArrayPRec1     : array [3..5] of ^TRecForArray3;
 
706
      GlobAStatDynArrayTRec1  : array [3..5] of array of TRecForArray1;
 
707
      GlobAStatDynArrayPRec1  : array [3..5] of array of ^TRecForArray1;
 
708
      GlobAStatStatArrayTRec1 : array [3..5] of array [3..5] of TRecForArray1;
 
709
      GlobAStatStatArrayPRec1 : array [3..5] of array [3..5] of ^TRecForArray1;
 
710
 
 
711
      GlobAStatArrayTRec2     : array [3..5] of TRecForArray4;
 
712
      GlobAStatArrayPRec2     : array [3..5] of ^TRecForArray4;
 
713
      GlobAStatArrayPPRec2    : array [3..5] of ^PRecForArray4; // double pointer
 
714
      GlobAStatDynArrayTRec2  : array [3..5] of array of TRecForArray2;
 
715
      GlobAStatDynArrayPRec2  : array [3..5] of array of ^TRecForArray2;
 
716
      GlobAStatStatArrayTRec2 : array [3..5] of array [3..5] of TRecForArray2;
 
717
      GlobAStatStatArrayPRec2 : array [3..5] of array [3..5] of ^TRecForArray2;
 
718
 
 
719
 
 
720
      // dyn arrays of named arrays
 
721
      GlobADynDynTRec1Array   : array of TDynArrayTRec1;
 
722
      GlobADynDynPrec1Array   : array of TDynArrayPRec1;
 
723
      GlobADynStatTRec1Array  : array of TStatArrayTRec1;
 
724
      GlobADynStatPRec1Array  : array of TStatArrayPRec1;
 
725
      GlobADynPDynTRec1Array   : array of ^TDynArrayTRec1;
 
726
      GlobADynPStatTRec1Array  : array of ^TStatArrayTRec1;
 
727
 
 
728
      GlobADynDynTRec2Array   : array of TDynArrayTRec2;
 
729
      GlobADynDynPrec2Array   : array of TDynArrayPRec2;
 
730
      GlobADynDynPPrec2Array  : array of TDynArrayPPRec2; // double pointer
 
731
      GlobADynStatTRec2Array  : array of TStatArrayTRec2;
 
732
      GlobADynStatPRec2Array  : array of TStatArrayPRec2;
 
733
      GlobADynStatPPRec2Array : array of TStatArrayPPRec2; // double pointer
 
734
 
 
735
      // stat arrays of named arrays
 
736
      GlobAStatDynTRec1Array   : array of TDynArrayTRec1;
 
737
      GlobAStatDynPrec1Array   : array of TDynArrayPRec1;
 
738
      GlobAStatStatTRec1Array  : array of TStatArrayTRec1;
 
739
      GlobAStatStatPRec1Array  : array of TStatArrayPRec1;
 
740
      GlobAStatPDynTRec1Array   : array of ^TDynArrayTRec1;
 
741
      GlobAStatPStatTRec1Array  : array of ^TStatArrayTRec1;
 
742
 
 
743
      GlobAStatDynTRec2Array   : array of TDynArrayTRec2;
 
744
      GlobAStatDynPrec2Array   : array of TDynArrayPRec2;
 
745
      GlobAStatDynPPrec2Array  : array of TDynArrayPPRec2; // double pointer
 
746
      GlobAStatStatTRec2Array  : array of TStatArrayTRec2;
 
747
      GlobAStatStatPRec2Array  : array of TStatArrayPRec2;
 
748
      GlobAStatStatPPRec2Array : array of TStatArrayPPRec2; // double pointer
 
749
 
 
750
      GlobADynDynDynArrayTRec1      : array of array of array of TRecForArray1;
 
751
      GlobADynDynDynDynArrayTRec1   : array of array of array of array of TRecForArray1;
 
752
      GlobADynArrayTRec5            : array of record a: byte; c:integer; end;
 
753
      GlobAStatArrayTRec5           : array [3..5] of record a: byte; c:integer; end;
 
754
 
 
755
      GlobAEnumArrayTRec1:     array [TEnunForArray] of TRecForArray3;
 
756
      GlobASubEnumArrayTRec1:  array [eaTwo..eaThree] of TRecForArray3;
 
757
 
 
758
      GlobAStatDualArrayTRec2: array [3..5, 3..5] of TRecForArray2;
 
759
 
 
760
      // TODO
 
761
      GlobAStatDynDynArrayTRec2  : array [3..5] of array of array of TRecForArray2;
 
762
      GlobADynDynStatArrayTRec2  : array of array of array [3..5] of TRecForArray2;
 
763
 
 
764
 
 
765
    {$ENDIF}
 
766
  {%endregion}
 
767
 
 
768
  {%region CODE (initilization)}
 
769
    {$IFDEF FooFunc_Body}
 
770
    //begin
 
771
      SetLength(VarDynIntArray,2);
 
772
      SetLength(VarDynIntArrayA,2);
 
773
      VarPDynIntArray := @VarDynIntArray;
 
774
      VarPStatIntArray := @VarStatIntArray;
 
775
      VarDynIntArrayP := @VarDynIntArray;
 
776
      for VarArrayHelperI := low(VarDynIntArray) to high (VarDynIntArray) do
 
777
        VarDynIntArray[VarArrayHelperI] := 2 * VarArrayHelperI;
 
778
      for VarArrayHelperI := low(VarStatIntArray) to high (VarStatIntArray) do
 
779
        VarStatIntArray[VarArrayHelperI] := 2 * VarArrayHelperI;
 
780
      for VarArrayHelperI := low(VarDynIntArrayA) to high (VarDynIntArrayA) do
 
781
        VarDynIntArrayA[VarArrayHelperI] := 2 * VarArrayHelperI;
 
782
      for VarArrayHelperI := low(VarStatIntArrayA) to high (VarStatIntArrayA) do
 
783
        VarStatIntArrayA[VarArrayHelperI] := 2 * VarArrayHelperI;
 
784
 
 
785
      SetLength(VarDynObjArray,2);
 
786
      SetLength(VarDynObjArrayA,2);
 
787
      VarPDynObjArray := @VarDynObjArray;
 
788
      VarPStatObjArray := @VarStatObjArray;
 
789
      for VarArrayHelperI := low(VarDynObjArray) to high (VarDynObjArray) do begin
 
790
        VarDynObjArray[VarArrayHelperI] := TObjectInArray.Create;
 
791
        VarDynObjArray[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
792
      end;
 
793
      for VarArrayHelperI := low(VarStatObjArray) to high (VarStatObjArray) do begin
 
794
        VarStatObjArray[VarArrayHelperI] := TObjectInArray.Create;
 
795
        VarStatObjArray[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
796
      end;
 
797
      for VarArrayHelperI := low(VarDynObjArrayA) to high (VarDynObjArrayA) do begin
 
798
        VarDynObjArrayA[VarArrayHelperI] := TObjectInArray.Create;
 
799
        VarDynObjArrayA[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
800
      end;
 
801
      for VarArrayHelperI := low(VarStatObjArrayA) to high (VarStatObjArrayA) do begin
 
802
        VarStatObjArrayA[VarArrayHelperI] := TObjectInArray.Create;
 
803
        VarStatObjArrayA[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
804
      end;
 
805
 
 
806
      SetLength(VarDynObjArray,2);
 
807
      SetLength(VarDynObjArrayA,2);
 
808
      VarPDynObjArray := @VarDynObjArray;
 
809
      VarPStatObjArray := @VarStatObjArray;
 
810
      for VarArrayHelperI := low(VarDynObjArray) to high (VarDynObjArray) do
 
811
        VarDynObjArray[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
812
      for VarArrayHelperI := low(VarStatObjArray) to high (VarStatObjArray) do
 
813
        VarStatObjArray[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
814
      for VarArrayHelperI := low(VarDynObjArrayA) to high (VarDynObjArrayA) do
 
815
        VarDynObjArrayA[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
816
      for VarArrayHelperI := low(VarStatObjArrayA) to high (VarStatObjArrayA) do
 
817
        VarStatObjArrayA[VarArrayHelperI].Foo := 2 * VarArrayHelperI;
 
818
 
 
819
      SetLength(VarDynIntArray2, 2);
 
820
      SetLength(VarDynIntArray2[0], 3);
 
821
 
 
822
      SetLength(VarDynIntArray2A, 2);
 
823
      SetLength(VarDynIntArray2A[0], 3);
 
824
      SetLength(VarStatIntArray2A[5], 3);
 
825
 
 
826
      SetLength(VarDynIntArray2p, 2);
 
827
      VarDynIntArray2p[0] := @VarDynIntArray;
 
828
      VarStatIntArray2P[5] := @VarDynIntArray;
 
829
    {$ENDIF}
 
830
 
 
831
    {$IFDEF Global_Body}
 
832
    //begin
 
833
      new(myRec2);
 
834
      myRec2^.c := 16;
 
835
      SetLength(myRec2^.recs, 16);
 
836
      myRec2^.recs[0].a := 10;
 
837
      myRec2^.recs[0].b := 20;
 
838
      myRec2^.recs[1].a := 11;
 
839
      myRec2^.recs[1].b := 21;
 
840
 
 
841
 
 
842
    // target for pointer
 
843
    //GlobTDynArrayTRec1NP, GlobTDynArrayTRec1NP2: TDynArrayTRec1NP;
 
844
    SetLength(GlobTDynArrayTRec1NP, 3);
 
845
    GlobTDynArrayTRec1NP[0].a := 500;
 
846
    GlobTDynArrayTRec1NP[1].a := 501;
 
847
    SetLength(GlobTDynArrayTRec1NP2, 3);
 
848
    GlobTDynArrayTRec1NP2[0].a := 505;
 
849
    GlobTDynArrayTRec1NP2[1].a := 506;
 
850
    //GlobTStatArrayTRec1NP, GlobTStatArrayTRec1NP2: TStatArrayTRec1NP;
 
851
    GlobTStatArrayTRec1NP[3].a := 510;
 
852
    GlobTStatArrayTRec1NP[4].a := 511;
 
853
    GlobTStatArrayTRec1NP2[3].a := 515;
 
854
    GlobTStatArrayTRec1NP2[4].a := 516;
 
855
 
 
856
 
 
857
  // dyn arrays
 
858
      //GlobTDynArrayTRec1: TDynArrayTRec1;
 
859
      SetLength(GlobTDynArrayTRec1, 3);
 
860
      globtdynarraytrec1[0].a := 90;            globtdynarraytrec1[0].b := 243;
 
861
      globtdynarraytrec1[1].a := 91;            globtdynarraytrec1[1].b := 243;
 
862
      //GlobTDynArrayPRec1: TDynArrayPRec1;
 
863
      SetLength(GlobTDynArrayPRec1, 3);
 
864
      GlobTDynArrayPRec1[0] := @GlobTDynArrayTRec1[0];
 
865
      GlobTDynArrayPRec1[1] := @GlobTDynArrayTRec1[1];
 
866
      //GlobTDynDynArrayTRec1: TDynDynArrayTRec1;
 
867
      SetLength(GlobTDynDynArrayTRec1, 3);
 
868
      SetLength(GlobTDynDynArrayTRec1[0], 3);
 
869
      globtdyndynarraytrec1[0][0].a := 80;            globtdyndynarraytrec1[0][0].b := 243;
 
870
      globtdyndynarraytrec1[0][1].a := 81;            globtdyndynarraytrec1[0][1].b := 243;
 
871
      SetLength(GlobTDynDynArrayTRec1[1], 3);
 
872
      globtdyndynarraytrec1[1][0].a := 85;            globtdyndynarraytrec1[1][0].b := 243;
 
873
      globtdyndynarraytrec1[1][1].a := 86;            globtdyndynarraytrec1[1][1].b := 243;
 
874
      //GlobTDynDynArrayPRec1: TDynDynArrayPRec1;
 
875
      SetLength(GlobTDynDynArrayPRec1, 3);
 
876
      SetLength(GlobTDynDynArrayPRec1[0], 3);
 
877
      GlobTDynDynArrayPRec1[0][0] := @GlobTDynDynArrayTRec1[0][0];
 
878
      GlobTDynDynArrayPRec1[0][1] := @GlobTDynDynArrayTRec1[0][1];
 
879
      SetLength(GlobTDynDynArrayPRec1[1], 3);
 
880
      GlobTDynDynArrayPRec1[1][0] := @GlobTDynDynArrayTRec1[1][0];
 
881
      GlobTDynDynArrayPRec1[1][1] := @GlobTDynDynArrayTRec1[1][1];
 
882
      //GlobTDynStatArrayTRec1: TDynStatArrayTRec1;
 
883
      SetLength(GlobTDynStatArrayTRec1, 3);
 
884
      globtdynstatarraytrec1[0][3].a := 70;            globtdynstatarraytrec1[0][3].b := 243;
 
885
      globtdynstatarraytrec1[0][4].a := 71;            globtdynstatarraytrec1[0][4].b := 243;
 
886
      globtdynstatarraytrec1[1][3].a := 75;            globtdynstatarraytrec1[1][3].b := 243;
 
887
      globtdynstatarraytrec1[1][4].a := 76;            globtdynstatarraytrec1[1][4].b := 243;
 
888
      //GlobTDynStatArrayPRec1: TDynStatArrayPRec1;
 
889
      SetLength(GlobTDynStatArrayPRec1, 3);
 
890
      GlobTDynStatArrayPRec1[0][3] := @GlobTDynStatArrayTRec1[0][3];
 
891
      GlobTDynStatArrayPRec1[0][4] := @GlobTDynStatArrayTRec1[0][4];
 
892
      GlobTDynStatArrayPRec1[1][3] := @GlobTDynStatArrayTRec1[1][3];
 
893
      GlobTDynStatArrayPRec1[1][4] := @GlobTDynStatArrayTRec1[1][4];
 
894
 
 
895
      //GlobTDynArrayTRec2: TDynArrayTRec2;
 
896
      SetLength(GlobTDynArrayTRec2, 3);
 
897
      globtdynarraytrec2[0].c := 90;            globtdynarraytrec2[0].recs := nil;
 
898
      globtdynarraytrec2[1].c := 91;            globtdynarraytrec2[1].recs := nil;
 
899
      //GlobTDynArrayPRec2: TDynArrayPRec2;
 
900
      SetLength(GlobTDynArrayPRec2, 3);
 
901
      GlobTDynArrayPRec2[0] := @GlobTDynArrayTRec2[0];
 
902
      GlobTDynArrayPRec2[1] := @GlobTDynArrayTRec2[1];
 
903
      //GlobTDynDynArrayTRec2: TDynDynArrayTRec2;
 
904
      SetLength(GlobTDynDynArrayTRec2, 3);
 
905
      SetLength(GlobTDynDynArrayTRec2[0], 3);
 
906
      globtdyndynarraytrec2[0][0].c := 80;            globtdyndynarraytrec2[0][0].recs := nil;
 
907
      globtdyndynarraytrec2[0][1].c := 81;            globtdyndynarraytrec2[0][1].recs := nil;
 
908
      SetLength(GlobTDynDynArrayTRec2[1], 3);
 
909
      globtdyndynarraytrec2[1][0].c := 85;            globtdyndynarraytrec2[1][0].recs := nil;
 
910
      globtdyndynarraytrec2[1][1].c := 86;            globtdyndynarraytrec2[1][1].recs := nil;
 
911
      //GlobTDynDynArrayPRec2: TDynDynArrayPRec2;
 
912
      SetLength(GlobTDynDynArrayPRec2, 3);
 
913
      SetLength(GlobTDynDynArrayPRec2[0], 3);
 
914
      GlobTDynDynArrayPRec2[0][0] := @GlobTDynDynArrayTRec2[0][0];
 
915
      GlobTDynDynArrayPRec2[0][1] := @GlobTDynDynArrayTRec2[0][1];
 
916
      SetLength(GlobTDynDynArrayPRec2[1], 3);
 
917
      GlobTDynDynArrayPRec2[1][0] := @GlobTDynDynArrayTRec2[1][0];
 
918
      GlobTDynDynArrayPRec2[1][1] := @GlobTDynDynArrayTRec2[1][1];
 
919
      //GlobTDynStatArrayTRec2: TDynStatArrayTRec2;
 
920
      SetLength(GlobTDynStatArrayTRec2, 3);
 
921
      globtdynstatarraytrec2[0][3].c := 70;            globtdynstatarraytrec2[0][3].recs := nil;
 
922
      globtdynstatarraytrec2[0][4].c := 71;            globtdynstatarraytrec2[0][4].recs := nil;
 
923
      globtdynstatarraytrec2[1][3].c := 75;            globtdynstatarraytrec2[1][3].recs := nil;
 
924
      globtdynstatarraytrec2[1][4].c := 76;            globtdynstatarraytrec2[1][4].recs := nil;
 
925
      //GlobTDynStatArrayPRec2: TDynStatArrayPRec2;
 
926
      SetLength(GlobTDynStatArrayPRec2, 3);
 
927
      GlobTDynStatArrayPRec2[0][3] := @GlobTDynStatArrayTRec2[0][3];
 
928
      GlobTDynStatArrayPRec2[0][4] := @GlobTDynStatArrayTRec2[0][4];
 
929
      GlobTDynStatArrayPRec2[1][3] := @GlobTDynStatArrayTRec2[1][3];
 
930
      GlobTDynStatArrayPRec2[1][4] := @GlobTDynStatArrayTRec2[1][4];
 
931
 
 
932
 
 
933
  // stat arrays
 
934
      //GlobTStatArrayTRec1: TStatArrayTRec1;
 
935
      globtstatarraytrec1[3].a := 50;            globtstatarraytrec1[3].b := 243;
 
936
      globtstatarraytrec1[4].a := 51;            globtstatarraytrec1[4].b := 243;
 
937
      //GlobTStatArrayPRec1: TStatArrayPRec1;
 
938
      GlobTStatArrayPRec1[3] := @GlobTStatArrayTRec1[3];
 
939
      GlobTStatArrayPRec1[4] := @GlobTStatArrayTRec1[4];
 
940
      //GlobTStatDynArrayTRec1: TStatDynArrayTRec1;
 
941
      SetLength(GlobTStatDynArrayTRec1[3], 3);
 
942
      globtstatdynarraytrec1[3][0].a := 40;            globtstatdynarraytrec1[3][0].b := 243;
 
943
      globtstatdynarraytrec1[3][1].a := 41;            globtstatdynarraytrec1[3][1].b := 243;
 
944
      SetLength(GlobTStatDynArrayTRec1[4], 3);
 
945
      globtstatdynarraytrec1[4][0].a := 45;            globtstatdynarraytrec1[4][0].b := 243;
 
946
      globtstatdynarraytrec1[4][1].a := 46;            globtstatdynarraytrec1[4][1].b := 243;
 
947
      //GlobTStatDynArrayPRec1: TStatDynArrayPRec1;
 
948
      SetLength(GlobTStatDynArrayPRec1[3], 3);
 
949
      GlobTStatDynArrayPRec1[3][0] := @GlobTDynDynArrayTRec1[3][0];
 
950
      GlobTStatDynArrayPRec1[3][1] := @GlobTDynDynArrayTRec1[3][1];
 
951
      SetLength(GlobTStatDynArrayPRec1[4], 3);
 
952
      GlobTStatDynArrayPRec1[4][0] := @GlobTDynDynArrayTRec1[4][0];
 
953
      GlobTStatDynArrayPRec1[4][1] := @GlobTDynDynArrayTRec1[4][1];
 
954
      //GlobTStatStatArrayTRec1: TStatStatArrayTRec1;
 
955
      globtstatstatarraytrec1[3][3].a := 30;            globtstatstatarraytrec1[3][3].b := 243;
 
956
      globtstatstatarraytrec1[3][4].a := 31;            globtstatstatarraytrec1[3][4].b := 243;
 
957
      globtstatstatarraytrec1[4][3].a := 35;            globtstatstatarraytrec1[4][3].b := 243;
 
958
      globtstatstatarraytrec1[4][4].a := 36;            globtstatstatarraytrec1[4][4].b := 243;
 
959
      //GlobTStatStatArrayPRec1: TStatStatArrayPRec1;
 
960
      GlobTStatStatArrayPRec1[3][3] := @GlobTStatStatArrayTRec1[3][3];
 
961
      GlobTStatStatArrayPRec1[3][4] := @GlobTStatStatArrayTRec1[3][4];
 
962
      GlobTStatStatArrayPRec1[4][3] := @GlobTStatStatArrayTRec1[4][3];
 
963
      GlobTStatStatArrayPRec1[4][4] := @GlobTStatStatArrayTRec1[4][4];
 
964
 
 
965
      //GlobTStatArrayTRec2: TStatArrayTRec2;
 
966
      globtstatarraytrec2[3].c := 50;            globtstatarraytrec2[3].recs := nil;
 
967
      globtstatarraytrec2[4].c := 51;            globtstatarraytrec2[4].recs := nil;
 
968
      //GlobTStatArrayPRec2: TStatArrayPRec2;
 
969
      GlobTStatArrayPRec2[3] := @GlobTStatArrayTRec2[3];
 
970
      GlobTStatArrayPRec2[4] := @GlobTStatArrayTRec2[4];
 
971
      //GlobTStatDynArrayTRec2: TStatDynArrayTRec2;
 
972
      SetLength(GlobTStatDynArrayTRec2[3], 3);
 
973
      globtstatdynarraytrec2[3][0].c := 40;            globtstatdynarraytrec2[3][0].recs := nil;
 
974
      globtstatdynarraytrec2[3][1].c := 41;            globtstatdynarraytrec2[3][1].recs := nil;
 
975
      SetLength(GlobTStatDynArrayTRec2[4], 3);
 
976
      globtstatdynarraytrec2[4][0].c := 45;            globtstatdynarraytrec2[4][0].recs := nil;
 
977
      globtstatdynarraytrec2[4][1].c := 46;            globtstatdynarraytrec2[4][1].recs := nil;
 
978
      //GlobTStatDynArrayPRec2: TStatDynArrayPRec2;
 
979
      SetLength(GlobTStatDynArrayPRec2[3], 3);
 
980
      GlobTStatDynArrayPRec2[3][0] := @GlobTDynDynArrayTRec2[3][0];
 
981
      GlobTStatDynArrayPRec2[3][1] := @GlobTDynDynArrayTRec2[3][1];
 
982
      SetLength(GlobTStatDynArrayPRec2[4], 3);
 
983
      GlobTStatDynArrayPRec2[4][0] := @GlobTDynDynArrayTRec2[4][0];
 
984
      GlobTStatDynArrayPRec2[4][1] := @GlobTDynDynArrayTRec2[4][1];
 
985
      //GlobTStatStatArrayTRec2: TStatStatArrayTRec2;
 
986
      globtstatstatarraytrec2[3][3].c := 30;            globtstatstatarraytrec2[3][3].recs := nil;
 
987
      globtstatstatarraytrec2[3][4].c := 31;            globtstatstatarraytrec2[3][4].recs := nil;
 
988
      globtstatstatarraytrec2[4][3].c := 35;            globtstatstatarraytrec2[4][3].recs := nil;
 
989
      globtstatstatarraytrec2[4][4].c := 36;            globtstatstatarraytrec2[4][4].recs := nil;
 
990
      //GlobTStatStatArrayPRec2: TStatStatArrayPRec2;
 
991
      GlobTStatStatArrayPRec2[3][3] := @GlobTStatStatArrayTRec2[3][3];
 
992
      GlobTStatStatArrayPRec2[3][4] := @GlobTStatStatArrayTRec2[3][4];
 
993
      GlobTStatStatArrayPRec2[4][3] := @GlobTStatStatArrayTRec2[4][3];
 
994
      GlobTStatStatArrayPRec2[4][4] := @GlobTStatStatArrayTRec2[4][4];
 
995
 
 
996
 
 
997
 
 
998
  // dyn arrays of named arrays
 
999
      //GlobTDynDynTRec1Array: TDynDynTRec1Array;
 
1000
      SetLength(GlobTDynDynTRec1Array, 3);
 
1001
      SetLength(GlobTDynDynTRec1Array[0], 3);
 
1002
      globtdyndyntrec1array[0][0].a := 80;            globtdyndyntrec1array[0][0].b := 243;
 
1003
      globtdyndyntrec1array[0][1].a := 81;            globtdyndyntrec1array[0][1].b := 243;
 
1004
      SetLength(GlobTDynDynTRec1Array[1], 3);
 
1005
      globtdyndyntrec1array[1][0].a := 85;            globtdyndyntrec1array[1][0].b := 243;
 
1006
      globtdyndyntrec1array[1][1].a := 86;            globtdyndyntrec1array[1][1].b := 243;
 
1007
      //GlobTDynDynPrec1Array: TDynDynPrec1Array;
 
1008
      SetLength(GlobTDynDynPrec1Array, 3);
 
1009
      SetLength(GlobTDynDynPrec1Array[0], 3);
 
1010
      GlobTDynDynPrec1Array[0][0] := @GlobTDynDynTRec1Array[0][0];
 
1011
      GlobTDynDynPrec1Array[0][1] := @GlobTDynDynTRec1Array[0][1];
 
1012
      SetLength(GlobTDynDynPrec1Array[1], 3);
 
1013
      GlobTDynDynPrec1Array[1][0] := @GlobTDynDynTRec1Array[1][0];
 
1014
      GlobTDynDynPrec1Array[1][1] := @GlobTDynDynTRec1Array[1][1];
 
1015
      //GlobTDynStatTRec1Array: TDynStatTRec1Array;
 
1016
      SetLength(GlobTDynStatTRec1Array, 3);
 
1017
      globtdynstattrec1array[0][3].a := 70;            globtdynstattrec1array[0][3].b := 243;
 
1018
      globtdynstattrec1array[0][4].a := 71;            globtdynstattrec1array[0][4].b := 243;
 
1019
      globtdynstattrec1array[1][3].a := 75;            globtdynstattrec1array[1][3].b := 243;
 
1020
      globtdynstattrec1array[1][4].a := 76;            globtdynstattrec1array[1][4].b := 243;
 
1021
      //GlobTDynStatPRec1Array: TDynStatPRec1Array;
 
1022
      SetLength(GlobTDynStatPRec1Array, 3);
 
1023
      GlobTDynStatPRec1Array[0][3] := @GlobTDynStatTRec1Array[0][3];
 
1024
      GlobTDynStatPRec1Array[0][4] := @GlobTDynStatTRec1Array[0][4];
 
1025
      GlobTDynStatPRec1Array[1][3] := @GlobTDynStatTRec1Array[1][3];
 
1026
      GlobTDynStatPRec1Array[1][4] := @GlobTDynStatTRec1Array[1][4];
 
1027
      //GlobTDynPDynTRec1Array: TDynPDynTRec1Array;
 
1028
      SetLength(GlobTDynPDynTRec1Array, 3);
 
1029
      GlobTDynPDynTRec1Array[0] := @GlobTDynDynTRec1Array[0];
 
1030
      GlobTDynPDynTRec1Array[1] := @GlobTDynDynTRec1Array[1];
 
1031
      //GlobTDynPStatTRec1Array: TDynPStatTRec1Array;
 
1032
      SetLength(GlobTDynPStatTRec1Array, 3);
 
1033
      GlobTDynPStatTRec1Array[0] := @GlobTDynStatTRec1Array[0];
 
1034
      GlobTDynPStatTRec1Array[1] := @GlobTDynStatTRec1Array[1];
 
1035
      //TDynPDynTRec1NPArray = array of ^TDynArrayTRec1NP;
 
1036
      SetLength(GlobTDynPDynTRec1NPArray, 3);
 
1037
      GlobTDynPDynTRec1NPArray[0] := @GlobTDynArrayTRec1NP;  // 500, 501
 
1038
      GlobTDynPDynTRec1NPArray[1] := @GlobTDynArrayTRec1NP2; // 505, 506;
 
1039
      //TDynPStatTRec1NPArray= array of ^TStatArrayTRec1NP;
 
1040
      SetLength(GlobTDynPStatTRec1NPArray, 3);
 
1041
      GlobTDynPStatTRec1NPArray[0] := @GlobTStatArrayTRec1NP;  // 510, 511
 
1042
      GlobTDynPStatTRec1NPArray[1] := @GlobTStatArrayTRec1NP2; // 515, 516
 
1043
 
 
1044
 
 
1045
      //GlobTDynDynTRec2Array: TDynDynTRec2Array;
 
1046
      SetLength(GlobTDynDynTRec2Array, 3);
 
1047
      SetLength(GlobTDynDynTRec2Array[0], 3);
 
1048
      globtdyndyntrec2array[0][0].c := 80;            globtdyndyntrec2array[0][0].recs := nil;
 
1049
      globtdyndyntrec2array[0][1].c := 81;            globtdyndyntrec2array[0][1].recs := nil;
 
1050
      SetLength(GlobTDynDynTRec2Array[1], 3);
 
1051
      globtdyndyntrec2array[1][0].c := 85;            globtdyndyntrec2array[1][0].recs := nil;
 
1052
      globtdyndyntrec2array[1][1].c := 86;            globtdyndyntrec2array[1][1].recs := nil;
 
1053
      //GlobTDynDynPRec2Array: TDynDynPRec2Array;
 
1054
      SetLength(GlobTDynDynPRec2Array, 3);
 
1055
      SetLength(GlobTDynDynPRec2Array[0], 3);
 
1056
      GlobTDynDynPRec2Array[0][0] := @GlobTDynDynTRec2Array[0][0];
 
1057
      GlobTDynDynPRec2Array[0][1] := @GlobTDynDynTRec2Array[0][1];
 
1058
      SetLength(GlobTDynDynPRec2Array[1], 3);
 
1059
      GlobTDynDynPRec2Array[1][0] := @GlobTDynDynTRec2Array[1][0];
 
1060
      GlobTDynDynPRec2Array[1][1] := @GlobTDynDynTRec2Array[1][1];
 
1061
      //GlobTDynDynPPrec2Array: TDynDynPPrec2Array;
 
1062
      SetLength(GlobTDynDynPPrec2Array, 3);
 
1063
      SetLength(GlobTDynDynPPrec2Array[0], 3);
 
1064
      GlobTDynDynPPrec2Array[0][0] := @GlobTDynDynPRec2Array[0][0];
 
1065
      GlobTDynDynPPrec2Array[0][1] := @GlobTDynDynPRec2Array[0][1];
 
1066
      SetLength(GlobTDynDynPPrec2Array[1], 3);
 
1067
      GlobTDynDynPPrec2Array[1][0] := @GlobTDynDynPRec2Array[1][0];
 
1068
      GlobTDynDynPPrec2Array[1][1] := @GlobTDynDynPRec2Array[1][1];
 
1069
      //GlobTDynStatTRec2Array: TDynStatTRec2Array;
 
1070
      SetLength(GlobTDynStatTRec2Array, 3);
 
1071
      globtdynstattrec2array[0][3].c := 70;            globtdynstattrec2array[0][3].recs := nil;
 
1072
      globtdynstattrec2array[0][4].c := 71;            globtdynstattrec2array[0][4].recs := nil;
 
1073
      globtdynstattrec2array[1][3].c := 75;            globtdynstattrec2array[1][3].recs := nil;
 
1074
      globtdynstattrec2array[1][4].c := 76;            globtdynstattrec2array[1][4].recs := nil;
 
1075
      //GlobTDynStatPRec2Array: TDynStatPRec2Array;
 
1076
      SetLength(GlobTDynStatPRec2Array, 3);
 
1077
      GlobTDynStatPRec2Array[0][3] := @GlobTDynStatTRec2Array[0][3];
 
1078
      GlobTDynStatPRec2Array[0][4] := @GlobTDynStatTRec2Array[0][4];
 
1079
      GlobTDynStatPRec2Array[1][3] := @GlobTDynStatTRec2Array[1][3];
 
1080
      GlobTDynStatPRec2Array[1][4] := @GlobTDynStatTRec2Array[1][4];
 
1081
      //GlobTDynStatPPRec2Array: TDynStatPPRec2Array;
 
1082
      SetLength(GlobTDynStatPPRec2Array, 3);
 
1083
      GlobTDynStatPPRec2Array[0][3] := @GlobTDynStatPRec2Array[0][3];
 
1084
      GlobTDynStatPPRec2Array[0][4] := @GlobTDynStatPRec2Array[0][4];
 
1085
      GlobTDynStatPPRec2Array[1][3] := @GlobTDynStatPRec2Array[1][3];
 
1086
      GlobTDynStatPPRec2Array[1][4] := @GlobTDynStatPRec2Array[1][4];
 
1087
 
 
1088
 
 
1089
 
 
1090
  // stat arrays of named arrays
 
1091
      //GlobTStatDynTRec1Array: TStatDynTRec1Array;
 
1092
      SetLength(GlobTStatDynTRec1Array[3], 3);
 
1093
      globtstatdyntrec1array[3][0].a := 80;            globtstatdyntrec1array[3][0].b := 243;
 
1094
      globtstatdyntrec1array[3][1].a := 81;            globtstatdyntrec1array[3][1].b := 243;
 
1095
      SetLength(GlobTStatDynTRec1Array[4], 3);
 
1096
      globtstatdyntrec1array[4][0].a := 85;            globtstatdyntrec1array[4][0].b := 243;
 
1097
      globtstatdyntrec1array[4][1].a := 86;            globtstatdyntrec1array[4][1].b := 243;
 
1098
      //GlobTStatDynPrec1Array: TStatDynPrec1Array;
 
1099
      SetLength(GlobTStatDynPrec1Array[3], 3);
 
1100
      GlobTStatDynPrec1Array[3][0] := @GlobTStatDynTRec1Array[3][0];
 
1101
      GlobTStatDynPrec1Array[3][1] := @GlobTStatDynTRec1Array[3][1];
 
1102
      SetLength(GlobTStatDynPrec1Array[4], 3);
 
1103
      GlobTStatDynPrec1Array[4][0] := @GlobTStatDynTRec1Array[4][0];
 
1104
      GlobTStatDynPrec1Array[4][1] := @GlobTStatDynTRec1Array[4][1];
 
1105
      //GlobTStatStatTRec1Array: TStatStatTRec1Array;
 
1106
      globtstatstattrec1array[3][3].a := 70;            globtstatstattrec1array[3][3].b := 243;
 
1107
      globtstatstattrec1array[3][4].a := 71;            globtstatstattrec1array[3][4].b := 243;
 
1108
      globtstatstattrec1array[4][3].a := 75;            globtstatstattrec1array[4][3].b := 243;
 
1109
      globtstatstattrec1array[4][4].a := 76;            globtstatstattrec1array[4][4].b := 243;
 
1110
      //GlobTStatStatPRec1Array: TStatStatPRec1Array;
 
1111
      GlobTStatStatPRec1Array[3][3] := @GlobTStatStatTRec1Array[3][3];
 
1112
      GlobTStatStatPRec1Array[3][4] := @GlobTStatStatTRec1Array[3][4];
 
1113
      GlobTStatStatPRec1Array[4][3] := @GlobTStatStatTRec1Array[4][3];
 
1114
      GlobTStatStatPRec1Array[4][4] := @GlobTStatStatTRec1Array[4][4];
 
1115
      //GlobTStatPDynTRec1Array: TStatPDynTRec1Array;
 
1116
      GlobTStatPDynTRec1Array[3] := @GlobTStatDynTRec1Array[3];
 
1117
      GlobTStatPDynTRec1Array[4] := @GlobTStatDynTRec1Array[4];
 
1118
      //GlobTStatPStatTRec1Array: TStatPStatTRec1Array;
 
1119
      GlobTStatPStatTRec1Array[3] := @GlobTStatStatTRec1Array[3];
 
1120
      GlobTStatPStatTRec1Array[4] := @GlobTStatStatTRec1Array[4];
 
1121
 
 
1122
 
 
1123
      //GlobTStatDynTRec2Array: TStatDynTRec2Array;
 
1124
      SetLength(GlobTStatDynTRec2Array[3], 3);
 
1125
      globtstatdyntrec2array[3][0].c := 80;            globtstatdyntrec2array[3][0].recs := nil;
 
1126
      globtstatdyntrec2array[3][1].c := 81;            globtstatdyntrec2array[3][1].recs := nil;
 
1127
      SetLength(GlobTStatDynTRec2Array[4], 3);
 
1128
      globtstatdyntrec2array[4][0].c := 85;            globtstatdyntrec2array[4][0].recs := nil;
 
1129
      globtstatdyntrec2array[4][1].c := 86;            globtstatdyntrec2array[4][1].recs := nil;
 
1130
      //GlobTStatDynPRec2Array: TStatDynPRec2Array;
 
1131
      SetLength(GlobTStatDynPRec2Array[3], 3);
 
1132
      GlobTStatDynPRec2Array[3][0] := @GlobTStatDynTRec2Array[3][0];
 
1133
      GlobTStatDynPRec2Array[3][1] := @GlobTStatDynTRec2Array[3][1];
 
1134
      SetLength(GlobTStatDynPRec2Array[4], 3);
 
1135
      GlobTStatDynPRec2Array[4][0] := @GlobTStatDynTRec2Array[4][0];
 
1136
      GlobTStatDynPRec2Array[4][1] := @GlobTStatDynTRec2Array[4][1];
 
1137
      //GlobTStatDynPPrec2Array: TStatDynPPrec2Array;
 
1138
      SetLength(GlobTStatDynPPrec2Array[3], 3);
 
1139
      GlobTStatDynPPrec2Array[3][0] := @GlobTStatDynPRec2Array[3][0];
 
1140
      GlobTStatDynPPrec2Array[3][1] := @GlobTStatDynPRec2Array[3][1];
 
1141
      SetLength(GlobTStatDynPPrec2Array[4], 3);
 
1142
      GlobTStatDynPPrec2Array[4][0] := @GlobTStatDynPRec2Array[4][0];
 
1143
      GlobTStatDynPPrec2Array[4][1] := @GlobTStatDynPRec2Array[4][1];
 
1144
      //GlobTStatStatTRec2Array: TStatStatTRec2Array;
 
1145
      globtstatstattrec2array[3][3].c := 70;            globtstatstattrec2array[3][3].recs := nil;
 
1146
      globtstatstattrec2array[3][4].c := 71;            globtstatstattrec2array[3][4].recs := nil;
 
1147
      globtstatstattrec2array[4][3].c := 75;            globtstatstattrec2array[4][3].recs := nil;
 
1148
      globtstatstattrec2array[4][4].c := 76;            globtstatstattrec2array[4][4].recs := nil;
 
1149
      //GlobTStatStatPRec2Array: TStatStatPRec2Array;
 
1150
      GlobTStatStatPRec2Array[3][3] := @GlobTStatStatTRec2Array[3][3];
 
1151
      GlobTStatStatPRec2Array[3][4] := @GlobTStatStatTRec2Array[3][4];
 
1152
      GlobTStatStatPRec2Array[4][3] := @GlobTStatStatTRec2Array[4][3];
 
1153
      GlobTStatStatPRec2Array[4][4] := @GlobTStatStatTRec2Array[4][4];
 
1154
      //GlobTStatStatPPRec2Array: TStatStatPPRec2Array;
 
1155
      GlobTStatStatPPRec2Array[3][3] := @GlobTStatStatPRec2Array[3][3];
 
1156
      GlobTStatStatPPRec2Array[3][4] := @GlobTStatStatPRec2Array[3][4];
 
1157
      GlobTStatStatPPRec2Array[4][3] := @GlobTStatStatPRec2Array[4][3];
 
1158
      GlobTStatStatPPRec2Array[4][4] := @GlobTStatStatPRec2Array[4][4];
 
1159
 
 
1160
 
 
1161
      globtenumarraytrec1[eaone].a      := 200;            globtenumarraytrec1[eaone].b := 243;
 
1162
      globtenumarraytrec1[eatwo].a      := 201;            globtenumarraytrec1[eatwo].b := 243;
 
1163
      globtsubenumarraytrec1[eatwo].a   := 205;            globtsubenumarraytrec1[eatwo].b := 243;
 
1164
      globtsubenumarraytrec1[eathree].a := 205;            globtsubenumarraytrec1[eathree].b := 243;
 
1165
 
 
1166
      globtstatdualarraytrec2[3,3].c := 300;            globtstatdualarraytrec2[3,3].recs := nil;
 
1167
      globtstatdualarraytrec2[3,4].c := 301;            globtstatdualarraytrec2[3,4].recs := nil;
 
1168
      globtstatdualarraytrec2[4,5].c := 302;            globtstatdualarraytrec2[4,5].recs := nil;
 
1169
 
 
1170
 
 
1171
// POINTER
 
1172
 
 
1173
      // dyn arrays
 
1174
      GlobPDynArrayTRec1 := @GlobTDynArrayTRec1;
 
1175
      GlobPDynArrayPRec1 := @GlobTDynArrayPRec1;
 
1176
      GlobPDynDynArrayTRec1 := @GlobTDynDynArrayTRec1;
 
1177
      GlobPDynDynArrayPRec1 := @GlobTDynDynArrayPRec1;
 
1178
      GlobPDynStatArrayTRec1 := @GlobTDynStatArrayTRec1;
 
1179
      GlobPDynStatArrayPRec1 := @GlobTDynStatArrayPRec1;
 
1180
 
 
1181
      GlobPDynArrayTRec2 := @GlobTDynArrayTRec2;
 
1182
      GlobPDynArrayPRec2 := @GlobTDynArrayPRec2;
 
1183
      GlobPDynArrayPPRec2 := @GlobTDynArrayPPRec2;
 
1184
      GlobPDynDynArrayTRec2 := @GlobTDynDynArrayTRec2;
 
1185
      GlobPDynDynArrayPRec2 := @GlobTDynDynArrayPRec2;
 
1186
      GlobPDynStatArrayTRec2 := @GlobTDynStatArrayTRec2;
 
1187
      GlobPDynStatArrayPRec2 := @GlobTDynStatArrayPRec2;
 
1188
 
 
1189
 
 
1190
      // stat arrays
 
1191
      GlobPStatArrayTRec1 := @GlobTStatArrayTRec1;
 
1192
      GlobPStatArrayPRec1 := @GlobTStatArrayPRec1;
 
1193
      GlobPStatDynArrayTRec1 := @GlobTStatDynArrayTRec1;
 
1194
      GlobPStatDynArrayPRec1 := @GlobTStatDynArrayPRec1;
 
1195
      GlobPStatStatArrayTRec1 := @GlobTStatStatArrayTRec1;
 
1196
      GlobPStatStatArrayPRec1 := @GlobTStatStatArrayPRec1;
 
1197
 
 
1198
      GlobPStatArrayTRec2 := @GlobTStatArrayTRec2;
 
1199
      GlobPStatArrayPRec2 := @GlobTStatArrayPRec2;
 
1200
      GlobPStatArrayPPRec2 := @GlobTStatArrayPPRec2;
 
1201
      GlobPStatDynArrayTRec2 := @GlobTStatDynArrayTRec2;
 
1202
      GlobPStatDynArrayPRec2 := @GlobTStatDynArrayPRec2;
 
1203
      GlobPStatStatArrayTRec2 := @GlobTStatStatArrayTRec2;
 
1204
      GlobPStatStatArrayPRec2 := @GlobTStatStatArrayPRec2;
 
1205
 
 
1206
 
 
1207
      // dyn arrays of named arrays
 
1208
      GlobPDynDynTRec1Array := @GlobTDynDynTRec1Array;
 
1209
      GlobPDynDynPrec1Array := @GlobTDynDynPrec1Array;
 
1210
      GlobPDynStatTRec1Array := @GlobTDynStatTRec1Array;
 
1211
      GlobPDynStatPRec1Array := @GlobTDynStatPRec1Array;
 
1212
      GlobPDynPDynTRec1Array := @GlobTDynPDynTRec1Array;
 
1213
      GlobPDynPStatTRec1Array := @GlobTDynPStatTRec1Array;
 
1214
 
 
1215
      GlobPDynDynTRec2Array := @GlobTDynDynTRec2Array;
 
1216
      GlobPDynDynPrec2Array := @GlobTDynDynPrec2Array;
 
1217
      GlobPDynDynPPrec2Array := @GlobTDynDynPPrec2Array;
 
1218
      GlobPDynStatTRec2Array := @GlobTDynStatTRec2Array;
 
1219
      GlobPDynStatPRec2Array := @GlobTDynStatPRec2Array;
 
1220
      GlobPDynStatPPRec2Array := @GlobTDynStatPPRec2Array;
 
1221
 
 
1222
      // stat arrays of named arrays
 
1223
      GlobPStatDynTRec1Array := @GlobTStatDynTRec1Array;
 
1224
      GlobPStatDynPrec1Array := @GlobTStatDynPrec1Array;
 
1225
      GlobPStatStatTRec1Array := @GlobTStatStatTRec1Array;
 
1226
      GlobPStatStatPRec1Array := @GlobTStatStatPRec1Array;
 
1227
      GlobPStatPDynTRec1Array := @GlobTStatPDynTRec1Array;
 
1228
      GlobPStatPStatTRec1Array := @GlobTStatPStatTRec1Array;
 
1229
 
 
1230
      GlobPStatDynTRec2Array := @GlobTStatDynTRec2Array;
 
1231
      GlobPStatDynPrec2Array := @GlobTStatDynPrec2Array;
 
1232
      GlobPStatDynPPrec2Array := @GlobTStatDynPPrec2Array;
 
1233
      GlobPStatStatTRec2Array := @GlobTStatStatTRec2Array;
 
1234
      GlobPStatStatPRec2Array := @GlobTStatStatPRec2Array;
 
1235
      GlobPStatStatPPRec2Array := @GlobTStatStatPPRec2Array;
 
1236
 
 
1237
      GlobPEnumArrayTRec1    := @GlobTEnumArrayTRec1;
 
1238
      GlobPSubEnumArrayTRec1 := @GlobTSubEnumArrayTRec1;
 
1239
 
 
1240
 
 
1241
// UN-NAMED types
 
1242
 
 
1243
  // dyn arrays
 
1244
      //GlobADynArrayTRec1: TDynArrayTRec1;
 
1245
      SetLength(GlobADynArrayTRec1, 3);
 
1246
      globadynarraytrec1[0].a := 90;            globadynarraytrec1[0].b := 243;
 
1247
      globadynarraytrec1[1].a := 91;            globadynarraytrec1[1].b := 243;
 
1248
      //GlobADynArrayPRec1: TDynArrayPRec1;
 
1249
      SetLength(GlobADynArrayPRec1, 3);
 
1250
      GlobADynArrayPRec1[0] := @GlobADynArrayTRec1[0];
 
1251
      GlobADynArrayPRec1[1] := @GlobADynArrayTRec1[1];
 
1252
      //GlobADynDynArrayTRec1: TDynDynArrayTRec1;
 
1253
      SetLength(GlobADynDynArrayTRec1, 3);
 
1254
      SetLength(GlobADynDynArrayTRec1[0], 3);
 
1255
      globadyndynarraytrec1[0][0].a := 80;            globadyndynarraytrec1[0][0].b := 243;
 
1256
      globadyndynarraytrec1[0][1].a := 81;            globadyndynarraytrec1[0][1].b := 243;
 
1257
      SetLength(GlobADynDynArrayTRec1[1], 3);
 
1258
      globadyndynarraytrec1[1][0].a := 85;            globadyndynarraytrec1[1][0].b := 243;
 
1259
      globadyndynarraytrec1[1][1].a := 86;            globadyndynarraytrec1[1][1].b := 243;
 
1260
      //GlobADynDynArrayPRec1: TDynDynArrayPRec1;
 
1261
      SetLength(GlobADynDynArrayPRec1, 3);
 
1262
      SetLength(GlobADynDynArrayPRec1[0], 3);
 
1263
      GlobADynDynArrayPRec1[0][0] := @GlobADynDynArrayTRec1[0][0];
 
1264
      GlobADynDynArrayPRec1[0][1] := @GlobADynDynArrayTRec1[0][1];
 
1265
      SetLength(GlobADynDynArrayPRec1[1], 3);
 
1266
      GlobADynDynArrayPRec1[1][0] := @GlobADynDynArrayTRec1[1][0];
 
1267
      GlobADynDynArrayPRec1[1][1] := @GlobADynDynArrayTRec1[1][1];
 
1268
      //GlobADynStatArrayTRec1: TDynStatArrayTRec1;
 
1269
      SetLength(GlobADynStatArrayTRec1, 3);
 
1270
      globadynstatarraytrec1[0][3].a := 70;            globadynstatarraytrec1[0][3].b := 243;
 
1271
      globadynstatarraytrec1[0][4].a := 71;            globadynstatarraytrec1[0][4].b := 243;
 
1272
      globadynstatarraytrec1[1][3].a := 75;            globadynstatarraytrec1[1][3].b := 243;
 
1273
      globadynstatarraytrec1[1][4].a := 76;            globadynstatarraytrec1[1][4].b := 243;
 
1274
      //GlobADynStatArrayPRec1: TDynStatArrayPRec1;
 
1275
      SetLength(GlobADynStatArrayPRec1, 3);
 
1276
      GlobADynStatArrayPRec1[0][3] := @GlobADynStatArrayTRec1[0][3];
 
1277
      GlobADynStatArrayPRec1[0][4] := @GlobADynStatArrayTRec1[0][4];
 
1278
      GlobADynStatArrayPRec1[1][3] := @GlobADynStatArrayTRec1[1][3];
 
1279
      GlobADynStatArrayPRec1[1][4] := @GlobADynStatArrayTRec1[1][4];
 
1280
 
 
1281
      //GlobADynArrayTRec2: TDynArrayTRec2;
 
1282
      SetLength(GlobADynArrayTRec2, 3);
 
1283
      globadynarraytrec2[0].c := 90;            globadynarraytrec2[0].recs := nil;
 
1284
      globadynarraytrec2[1].c := 91;            globadynarraytrec2[1].recs := nil;
 
1285
      //GlobADynArrayPRec2: TDynArrayPRec2;
 
1286
      SetLength(GlobADynArrayPRec2, 3);
 
1287
      GlobADynArrayPRec2[0] := @GlobADynArrayTRec2[0];
 
1288
      GlobADynArrayPRec2[1] := @GlobADynArrayTRec2[1];
 
1289
      //GlobADynDynArrayTRec2: TDynDynArrayTRec2;
 
1290
      SetLength(GlobADynDynArrayTRec2, 3);
 
1291
      SetLength(GlobADynDynArrayTRec2[0], 3);
 
1292
      globadyndynarraytrec2[0][0].c := 80;            globadyndynarraytrec2[0][0].recs := nil;
 
1293
      globadyndynarraytrec2[0][1].c := 81;            globadyndynarraytrec2[0][1].recs := nil;
 
1294
      SetLength(GlobADynDynArrayTRec2[1], 3);
 
1295
      globadyndynarraytrec2[1][0].c := 85;            globadyndynarraytrec2[1][0].recs := nil;
 
1296
      globadyndynarraytrec2[1][1].c := 86;            globadyndynarraytrec2[1][1].recs := nil;
 
1297
      //GlobADynDynArrayPRec2: TDynDynArrayPRec2;
 
1298
      SetLength(GlobADynDynArrayPRec2, 3);
 
1299
      SetLength(GlobADynDynArrayPRec2[0], 3);
 
1300
      GlobADynDynArrayPRec2[0][0] := @GlobADynDynArrayTRec2[0][0];
 
1301
      GlobADynDynArrayPRec2[0][1] := @GlobADynDynArrayTRec2[0][1];
 
1302
      SetLength(GlobADynDynArrayPRec2[1], 3);
 
1303
      GlobADynDynArrayPRec2[1][0] := @GlobADynDynArrayTRec2[1][0];
 
1304
      GlobADynDynArrayPRec2[1][1] := @GlobADynDynArrayTRec2[1][1];
 
1305
      //GlobADynStatArrayTRec2: TDynStatArrayTRec2;
 
1306
      SetLength(GlobADynStatArrayTRec2, 3);
 
1307
      globadynstatarraytrec2[0][3].c := 70;            globadynstatarraytrec2[0][3].recs := nil;
 
1308
      globadynstatarraytrec2[0][4].c := 71;            globadynstatarraytrec2[0][4].recs := nil;
 
1309
      globadynstatarraytrec2[1][3].c := 75;            globadynstatarraytrec2[1][3].recs := nil;
 
1310
      globadynstatarraytrec2[1][4].c := 76;            globadynstatarraytrec2[1][4].recs := nil;
 
1311
      //GlobADynStatArrayPRec2: TDynStatArrayPRec2;
 
1312
      SetLength(GlobADynStatArrayPRec2, 3);
 
1313
      GlobADynStatArrayPRec2[0][3] := @GlobADynStatArrayTRec2[0][3];
 
1314
      GlobADynStatArrayPRec2[0][4] := @GlobADynStatArrayTRec2[0][4];
 
1315
      GlobADynStatArrayPRec2[1][3] := @GlobADynStatArrayTRec2[1][3];
 
1316
      GlobADynStatArrayPRec2[1][4] := @GlobADynStatArrayTRec2[1][4];
 
1317
 
 
1318
 
 
1319
  // stat arrays
 
1320
      //GlobAStatArrayTRec1: TStatArrayTRec1;
 
1321
      globastatarraytrec1[3].a := 50;            globastatarraytrec1[3].b := 243;
 
1322
      globastatarraytrec1[4].a := 51;            globastatarraytrec1[4].b := 243;
 
1323
      //GlobAStatArrayPRec1: TStatArrayPRec1;
 
1324
      GlobAStatArrayPRec1[3] := @GlobAStatArrayTRec1[3];
 
1325
      GlobAStatArrayPRec1[4] := @GlobAStatArrayTRec1[4];
 
1326
      //GlobAStatDynArrayTRec1: TStatDynArrayTRec1;
 
1327
      SetLength(GlobAStatDynArrayTRec1[3], 3);
 
1328
      globastatdynarraytrec1[3][0].a := 40;            globastatdynarraytrec1[3][0].b := 243;
 
1329
      globastatdynarraytrec1[3][1].a := 41;            globastatdynarraytrec1[3][1].b := 243;
 
1330
      SetLength(GlobAStatDynArrayTRec1[4], 3);
 
1331
      globastatdynarraytrec1[4][0].a := 45;            globastatdynarraytrec1[4][0].b := 243;
 
1332
      globastatdynarraytrec1[4][1].a := 46;            globastatdynarraytrec1[4][1].b := 243;
 
1333
      //GlobAStatDynArrayPRec1: TStatDynArrayPRec1;
 
1334
      SetLength(GlobAStatDynArrayPRec1[3], 3);
 
1335
      GlobAStatDynArrayPRec1[3][0] := @GlobADynDynArrayTRec1[3][0];
 
1336
      GlobAStatDynArrayPRec1[3][1] := @GlobADynDynArrayTRec1[3][1];
 
1337
      SetLength(GlobAStatDynArrayPRec1[4], 3);
 
1338
      GlobAStatDynArrayPRec1[4][0] := @GlobADynDynArrayTRec1[4][0];
 
1339
      GlobAStatDynArrayPRec1[4][1] := @GlobADynDynArrayTRec1[4][1];
 
1340
      //GlobAStatStatArrayTRec1: TStatStatArrayTRec1;
 
1341
      globastatstatarraytrec1[3][3].a := 30;            globastatstatarraytrec1[3][3].b := 243;
 
1342
      globastatstatarraytrec1[3][4].a := 31;            globastatstatarraytrec1[3][4].b := 243;
 
1343
      globastatstatarraytrec1[4][3].a := 35;            globastatstatarraytrec1[4][3].b := 243;
 
1344
      globastatstatarraytrec1[4][4].a := 36;            globastatstatarraytrec1[4][4].b := 243;
 
1345
      //GlobAStatStatArrayPRec1: TStatStatArrayPRec1;
 
1346
      GlobAStatStatArrayPRec1[3][3] := @GlobAStatStatArrayTRec1[3][3];
 
1347
      GlobAStatStatArrayPRec1[3][4] := @GlobAStatStatArrayTRec1[3][4];
 
1348
      GlobAStatStatArrayPRec1[4][3] := @GlobAStatStatArrayTRec1[4][3];
 
1349
      GlobAStatStatArrayPRec1[4][4] := @GlobAStatStatArrayTRec1[4][4];
 
1350
 
 
1351
      //GlobAStatArrayTRec2: TStatArrayTRec2;
 
1352
      globastatarraytrec2[3].c := 50;            globastatarraytrec2[3].recs := nil;
 
1353
      globastatarraytrec2[4].c := 51;            globastatarraytrec2[4].recs := nil;
 
1354
      //GlobAStatArrayPRec2: TStatArrayPRec2;
 
1355
      GlobAStatArrayPRec2[3] := @GlobAStatArrayTRec2[3];
 
1356
      GlobAStatArrayPRec2[4] := @GlobAStatArrayTRec2[4];
 
1357
      //GlobAStatDynArrayTRec2: TStatDynArrayTRec2;
 
1358
      SetLength(GlobAStatDynArrayTRec2[3], 3);
 
1359
      globastatdynarraytrec2[3][0].c := 40;            globastatdynarraytrec2[3][0].recs := nil;
 
1360
      globastatdynarraytrec2[3][1].c := 41;            globastatdynarraytrec2[3][1].recs := nil;
 
1361
      SetLength(GlobAStatDynArrayTRec2[4], 3);
 
1362
      globastatdynarraytrec2[4][0].c := 45;            globastatdynarraytrec2[4][0].recs := nil;
 
1363
      globastatdynarraytrec2[4][1].c := 46;            globastatdynarraytrec2[4][1].recs := nil;
 
1364
      //GlobAStatDynArrayPRec2: TStatDynArrayPRec2;
 
1365
      SetLength(GlobAStatDynArrayPRec2[3], 3);
 
1366
      GlobAStatDynArrayPRec2[3][0] := @GlobADynDynArrayTRec2[3][0];
 
1367
      GlobAStatDynArrayPRec2[3][1] := @GlobADynDynArrayTRec2[3][1];
 
1368
      SetLength(GlobAStatDynArrayPRec2[4], 3);
 
1369
      GlobAStatDynArrayPRec2[4][0] := @GlobADynDynArrayTRec2[4][0];
 
1370
      GlobAStatDynArrayPRec2[4][1] := @GlobADynDynArrayTRec2[4][1];
 
1371
      //GlobAStatStatArrayTRec2: TStatStatArrayTRec2;
 
1372
      globastatstatarraytrec2[3][3].c := 30;            globastatstatarraytrec2[3][3].recs := nil;
 
1373
      globastatstatarraytrec2[3][4].c := 31;            globastatstatarraytrec2[3][4].recs := nil;
 
1374
      globastatstatarraytrec2[4][3].c := 35;            globastatstatarraytrec2[4][3].recs := nil;
 
1375
      globastatstatarraytrec2[4][4].c := 36;            globastatstatarraytrec2[4][4].recs := nil;
 
1376
      //GlobAStatStatArrayPRec2: TStatStatArrayPRec2;
 
1377
      GlobAStatStatArrayPRec2[3][3] := @GlobAStatStatArrayTRec2[3][3];
 
1378
      GlobAStatStatArrayPRec2[3][4] := @GlobAStatStatArrayTRec2[3][4];
 
1379
      GlobAStatStatArrayPRec2[4][3] := @GlobAStatStatArrayTRec2[4][3];
 
1380
      GlobAStatStatArrayPRec2[4][4] := @GlobAStatStatArrayTRec2[4][4];
 
1381
 
 
1382
 
 
1383
 
 
1384
  // dyn arrays of named arrays
 
1385
      //GlobADynDynTRec1Array: TDynDynTRec1Array;
 
1386
      SetLength(GlobADynDynTRec1Array, 3);
 
1387
      SetLength(GlobADynDynTRec1Array[0], 3);
 
1388
      globadyndyntrec1array[0][0].a := 80;            globadyndyntrec1array[0][0].b := 243;
 
1389
      globadyndyntrec1array[0][1].a := 81;            globadyndyntrec1array[0][1].b := 243;
 
1390
      SetLength(GlobADynDynTRec1Array[1], 3);
 
1391
      globadyndyntrec1array[1][0].a := 85;            globadyndyntrec1array[1][0].b := 243;
 
1392
      globadyndyntrec1array[1][1].a := 86;            globadyndyntrec1array[1][1].b := 243;
 
1393
      //GlobADynDynPrec1Array: TDynDynPrec1Array;
 
1394
      SetLength(GlobADynDynPrec1Array, 3);
 
1395
      SetLength(GlobADynDynPrec1Array[0], 3);
 
1396
      GlobADynDynPrec1Array[0][0] := @GlobADynDynTRec1Array[0][0];
 
1397
      GlobADynDynPrec1Array[0][1] := @GlobADynDynTRec1Array[0][1];
 
1398
      SetLength(GlobADynDynPrec1Array[1], 3);
 
1399
      GlobADynDynPrec1Array[1][0] := @GlobADynDynTRec1Array[1][0];
 
1400
      GlobADynDynPrec1Array[1][1] := @GlobADynDynTRec1Array[1][1];
 
1401
      //GlobADynStatTRec1Array: TDynStatTRec1Array;
 
1402
      SetLength(GlobADynStatTRec1Array, 3);
 
1403
      globadynstattrec1array[0][3].a := 70;            globadynstattrec1array[0][3].b := 243;
 
1404
      globadynstattrec1array[0][4].a := 71;            globadynstattrec1array[0][4].b := 243;
 
1405
      globadynstattrec1array[1][3].a := 75;            globadynstattrec1array[1][3].b := 243;
 
1406
      globadynstattrec1array[1][4].a := 76;            globadynstattrec1array[1][4].b := 243;
 
1407
      //GlobADynStatPRec1Array: TDynStatPRec1Array;
 
1408
      SetLength(GlobADynStatPRec1Array, 3);
 
1409
      GlobADynStatPRec1Array[0][3] := @GlobADynStatTRec1Array[0][3];
 
1410
      GlobADynStatPRec1Array[0][4] := @GlobADynStatTRec1Array[0][4];
 
1411
      GlobADynStatPRec1Array[1][3] := @GlobADynStatTRec1Array[1][3];
 
1412
      GlobADynStatPRec1Array[1][4] := @GlobADynStatTRec1Array[1][4];
 
1413
      //GlobADynPDynTRec1Array: TDynPDynTRec1Array;
 
1414
      SetLength(GlobADynPDynTRec1Array, 3);
 
1415
      GlobADynPDynTRec1Array[0] := @GlobADynDynTRec1Array[0];
 
1416
      GlobADynPDynTRec1Array[1] := @GlobADynDynTRec1Array[1];
 
1417
      //GlobADynPStatTRec1Array: TDynPStatTRec1Array;
 
1418
      SetLength(GlobADynPStatTRec1Array, 3);
 
1419
      GlobADynPStatTRec1Array[0] := @GlobADynStatTRec1Array[0];
 
1420
      GlobADynPStatTRec1Array[1] := @GlobADynStatTRec1Array[1];
 
1421
      //TDynPDynTRec1NPArray = array of ^TDynArrayTRec1NP;
 
1422
      GlobPDynPDynTRec1NPArray := @GlobTDynPDynTRec1NPArray;
 
1423
      //TDynPStatTRec1NPArray= array of ^TStatArrayTRec1NP;
 
1424
      GlobPDynPStatTRec1NPArray := @GlobTDynPStatTRec1NPArray;
 
1425
 
 
1426
 
 
1427
      //GlobADynDynTRec2Array: TDynDynTRec2Array;
 
1428
      SetLength(GlobADynDynTRec2Array, 3);
 
1429
      SetLength(GlobADynDynTRec2Array[0], 3);
 
1430
      globadyndyntrec2array[0][0].c := 80;            globadyndyntrec2array[0][0].recs := nil;
 
1431
      globadyndyntrec2array[0][1].c := 81;            globadyndyntrec2array[0][1].recs := nil;
 
1432
      SetLength(GlobADynDynTRec2Array[1], 3);
 
1433
      globadyndyntrec2array[1][0].c := 85;            globadyndyntrec2array[1][0].recs := nil;
 
1434
      globadyndyntrec2array[1][1].c := 86;            globadyndyntrec2array[1][1].recs := nil;
 
1435
      //GlobADynDynPRec2Array: TDynDynPRec2Array;
 
1436
      SetLength(GlobADynDynPRec2Array, 3);
 
1437
      SetLength(GlobADynDynPRec2Array[0], 3);
 
1438
      GlobADynDynPRec2Array[0][0] := @GlobADynDynTRec2Array[0][0];
 
1439
      GlobADynDynPRec2Array[0][1] := @GlobADynDynTRec2Array[0][1];
 
1440
      SetLength(GlobADynDynPRec2Array[1], 3);
 
1441
      GlobADynDynPRec2Array[1][0] := @GlobADynDynTRec2Array[1][0];
 
1442
      GlobADynDynPRec2Array[1][1] := @GlobADynDynTRec2Array[1][1];
 
1443
      //GlobADynDynPPrec2Array: TDynDynPPrec2Array;
 
1444
      SetLength(GlobADynDynPPrec2Array, 3);
 
1445
      SetLength(GlobADynDynPPrec2Array[0], 3);
 
1446
      GlobADynDynPPrec2Array[0][0] := @GlobADynDynPRec2Array[0][0];
 
1447
      GlobADynDynPPrec2Array[0][1] := @GlobADynDynPRec2Array[0][1];
 
1448
      SetLength(GlobADynDynPPrec2Array[1], 3);
 
1449
      GlobADynDynPPrec2Array[1][0] := @GlobADynDynPRec2Array[1][0];
 
1450
      GlobADynDynPPrec2Array[1][1] := @GlobADynDynPRec2Array[1][1];
 
1451
      //GlobADynStatTRec2Array: TDynStatTRec2Array;
 
1452
      SetLength(GlobADynStatTRec2Array, 3);
 
1453
      globadynstattrec2array[0][3].c := 70;            globadynstattrec2array[0][3].recs := nil;
 
1454
      globadynstattrec2array[0][4].c := 71;            globadynstattrec2array[0][4].recs := nil;
 
1455
      globadynstattrec2array[1][3].c := 75;            globadynstattrec2array[1][3].recs := nil;
 
1456
      globadynstattrec2array[1][4].c := 76;            globadynstattrec2array[1][4].recs := nil;
 
1457
      //GlobADynStatPRec2Array: TDynStatPRec2Array;
 
1458
      SetLength(GlobADynStatPRec2Array, 3);
 
1459
      GlobADynStatPRec2Array[0][3] := @GlobADynStatTRec2Array[0][3];
 
1460
      GlobADynStatPRec2Array[0][4] := @GlobADynStatTRec2Array[0][4];
 
1461
      GlobADynStatPRec2Array[1][3] := @GlobADynStatTRec2Array[1][3];
 
1462
      GlobADynStatPRec2Array[1][4] := @GlobADynStatTRec2Array[1][4];
 
1463
      //GlobADynStatPPRec2Array: TDynStatPPRec2Array;
 
1464
      SetLength(GlobADynStatPPRec2Array, 3);
 
1465
      GlobADynStatPPRec2Array[0][3] := @GlobADynStatPRec2Array[0][3];
 
1466
      GlobADynStatPPRec2Array[0][4] := @GlobADynStatPRec2Array[0][4];
 
1467
      GlobADynStatPPRec2Array[1][3] := @GlobADynStatPRec2Array[1][3];
 
1468
      GlobADynStatPPRec2Array[1][4] := @GlobADynStatPRec2Array[1][4];
 
1469
 
 
1470
 
 
1471
 
 
1472
  // stat arrays of named arrays
 
1473
      //GlobAStatDynTRec1Array: TStatDynTRec1Array;
 
1474
      SetLength(GlobAStatDynTRec1Array, 3);
 
1475
      SetLength(GlobAStatDynTRec1Array[0], 3);
 
1476
      globastatdyntrec1array[0][0].a := 80;            globastatdyntrec1array[0][0].b := 243;
 
1477
      globastatdyntrec1array[0][1].a := 81;            globastatdyntrec1array[0][1].b := 243;
 
1478
      SetLength(GlobAStatDynTRec1Array[1], 3);
 
1479
      globastatdyntrec1array[1][0].a := 85;            globastatdyntrec1array[1][0].b := 243;
 
1480
      globastatdyntrec1array[1][1].a := 86;            globastatdyntrec1array[1][1].b := 243;
 
1481
      //GlobAStatDynPrec1Array: TStatDynPrec1Array;
 
1482
      SetLength(GlobAStatDynPrec1Array, 3);
 
1483
      SetLength(GlobAStatDynPrec1Array[0], 3);
 
1484
      GlobAStatDynPrec1Array[0][0] := @GlobAStatDynTRec1Array[0][0];
 
1485
      GlobAStatDynPrec1Array[0][1] := @GlobAStatDynTRec1Array[0][1];
 
1486
      SetLength(GlobAStatDynPrec1Array[1], 3);
 
1487
      GlobAStatDynPrec1Array[1][0] := @GlobAStatDynTRec1Array[1][0];
 
1488
      GlobAStatDynPrec1Array[1][1] := @GlobAStatDynTRec1Array[1][1];
 
1489
      //GlobAStatStatTRec1Array: TStatStatTRec1Array;
 
1490
      SetLength(GlobAStatStatTRec1Array, 3);
 
1491
      globastatstattrec1array[0][3].a := 70;            globastatstattrec1array[0][3].b := 243;
 
1492
      globastatstattrec1array[0][4].a := 71;            globastatstattrec1array[0][4].b := 243;
 
1493
      globastatstattrec1array[1][3].a := 75;            globastatstattrec1array[1][3].b := 243;
 
1494
      globastatstattrec1array[1][4].a := 76;            globastatstattrec1array[1][4].b := 243;
 
1495
      //GlobAStatStatPRec1Array: TStatStatPRec1Array;
 
1496
      SetLength(GlobAStatStatPRec1Array, 3);
 
1497
      GlobAStatStatPRec1Array[0][3] := @GlobAStatStatTRec1Array[0][3];
 
1498
      GlobAStatStatPRec1Array[0][4] := @GlobAStatStatTRec1Array[0][4];
 
1499
      GlobAStatStatPRec1Array[1][3] := @GlobAStatStatTRec1Array[1][3];
 
1500
      GlobAStatStatPRec1Array[1][4] := @GlobAStatStatTRec1Array[1][4];
 
1501
      //GlobAStatPDynTRec1Array: TStatPDynTRec1Array;
 
1502
      SetLength(GlobAStatPDynTRec1Array, 3);
 
1503
      GlobAStatPDynTRec1Array[0] := @GlobAStatDynTRec1Array[0];
 
1504
      GlobAStatPDynTRec1Array[1] := @GlobAStatDynTRec1Array[1];
 
1505
      //GlobAStatPStatTRec1Array: TStatPStatTRec1Array;
 
1506
      SetLength(GlobAStatPStatTRec1Array, 3);
 
1507
      GlobAStatPStatTRec1Array[0] := @GlobAStatStatTRec1Array[0];
 
1508
      GlobAStatPStatTRec1Array[1] := @GlobAStatStatTRec1Array[1];
 
1509
 
 
1510
 
 
1511
      //GlobAStatDynTRec2Array: TStatDynTRec2Array;
 
1512
      SetLength(GlobAStatDynTRec2Array, 3);
 
1513
      SetLength(GlobAStatDynTRec2Array[0], 3);
 
1514
      globastatdyntrec2array[0][0].c := 80;            globastatdyntrec2array[0][0].recs := nil;
 
1515
      globastatdyntrec2array[0][1].c := 81;            globastatdyntrec2array[0][1].recs := nil;
 
1516
      SetLength(GlobAStatDynTRec2Array[1], 3);
 
1517
      globastatdyntrec2array[1][0].c := 85;            globastatdyntrec2array[1][0].recs := nil;
 
1518
      globastatdyntrec2array[1][1].c := 86;            globastatdyntrec2array[1][1].recs := nil;
 
1519
      //GlobAStatDynPRec2Array: TStatDynPRec2Array;
 
1520
      SetLength(GlobAStatDynPRec2Array, 3);
 
1521
      SetLength(GlobAStatDynPRec2Array[0], 3);
 
1522
      GlobAStatDynPRec2Array[0][0] := @GlobAStatDynTRec2Array[0][0];
 
1523
      GlobAStatDynPRec2Array[0][1] := @GlobAStatDynTRec2Array[0][1];
 
1524
      SetLength(GlobAStatDynPRec2Array[1], 3);
 
1525
      GlobAStatDynPRec2Array[1][0] := @GlobAStatDynTRec2Array[1][0];
 
1526
      GlobAStatDynPRec2Array[1][1] := @GlobAStatDynTRec2Array[1][1];
 
1527
      //GlobAStatDynPPrec2Array: TStatDynPPrec2Array;
 
1528
      SetLength(GlobAStatDynPPrec2Array, 3);
 
1529
      SetLength(GlobAStatDynPPrec2Array[0], 3);
 
1530
      GlobAStatDynPPrec2Array[0][0] := @GlobAStatDynPRec2Array[0][0];
 
1531
      GlobAStatDynPPrec2Array[0][1] := @GlobAStatDynPRec2Array[0][1];
 
1532
      SetLength(GlobAStatDynPPrec2Array[1], 3);
 
1533
      GlobAStatDynPPrec2Array[1][0] := @GlobAStatDynPRec2Array[1][0];
 
1534
      GlobAStatDynPPrec2Array[1][1] := @GlobAStatDynPRec2Array[1][1];
 
1535
      //GlobAStatStatTRec2Array: TStatStatTRec2Array;
 
1536
      SetLength(GlobAStatStatTRec2Array, 3);
 
1537
      globastatstattrec2array[0][3].c := 70;            globastatstattrec2array[0][3].recs := nil;
 
1538
      globastatstattrec2array[0][4].c := 71;            globastatstattrec2array[0][4].recs := nil;
 
1539
      globastatstattrec2array[1][3].c := 75;            globastatstattrec2array[1][3].recs := nil;
 
1540
      globastatstattrec2array[1][4].c := 76;            globastatstattrec2array[1][4].recs := nil;
 
1541
      //GlobAStatStatPRec2Array: TStatStatPRec2Array;
 
1542
      SetLength(GlobAStatStatPRec2Array, 3);
 
1543
      GlobAStatStatPRec2Array[0][3] := @GlobAStatStatTRec2Array[0][3];
 
1544
      GlobAStatStatPRec2Array[0][4] := @GlobAStatStatTRec2Array[0][4];
 
1545
      GlobAStatStatPRec2Array[1][3] := @GlobAStatStatTRec2Array[1][3];
 
1546
      GlobAStatStatPRec2Array[1][4] := @GlobAStatStatTRec2Array[1][4];
 
1547
      //GlobAStatStatPPRec2Array: TStatStatPPRec2Array;
 
1548
      SetLength(GlobAStatStatPPRec2Array, 3);
 
1549
      GlobAStatStatPPRec2Array[0][3] := @GlobAStatStatPRec2Array[0][3];
 
1550
      GlobAStatStatPPRec2Array[0][4] := @GlobAStatStatPRec2Array[0][4];
 
1551
      GlobAStatStatPPRec2Array[1][3] := @GlobAStatStatPRec2Array[1][3];
 
1552
      GlobAStatStatPPRec2Array[1][4] := @GlobAStatStatPRec2Array[1][4];
 
1553
 
 
1554
      SetLength(GlobADynDynDynArrayTRec1,3);
 
1555
      GlobADynDynDynArrayTRec1[0] := GlobADynDynArrayTRec1;
 
1556
      GlobADynDynDynArrayTRec1[1] := GlobADynDynArrayTRec1;
 
1557
 
 
1558
      SetLength(GlobADynDynDynDynArrayTRec1,3);
 
1559
      GlobADynDynDynDynArrayTRec1[0] := GlobADynDynDynArrayTRec1;
 
1560
      GlobADynDynDynDynArrayTRec1[1] := GlobADynDynDynArrayTRec1;
 
1561
 
 
1562
      SetLength(GlobADynArrayTRec5, 3);
 
1563
      globadynarraytrec5[0].a := 10;
 
1564
      globadynarraytrec5[0].c := 12;
 
1565
      globadynarraytrec5[1].a := 11;
 
1566
      globadynarraytrec5[1].c := 13;
 
1567
 
 
1568
      globastatarraytrec5[3].a := 15;
 
1569
      globastatarraytrec5[3].c := 17;
 
1570
      globastatarraytrec5[4].a := 16;
 
1571
      globastatarraytrec5[4].c := 18;
 
1572
 
 
1573
      globaenumarraytrec1[eaone].a      := 200;            globaenumarraytrec1[eaone].b := 243;
 
1574
      globaenumarraytrec1[eatwo].a      := 201;            globaenumarraytrec1[eatwo].b := 243;
 
1575
      globasubenumarraytrec1[eatwo].a   := 205;            globasubenumarraytrec1[eatwo].b := 243;
 
1576
      globasubenumarraytrec1[eathree].a := 205;            globasubenumarraytrec1[eathree].b := 243;
 
1577
 
 
1578
      globastatdualarraytrec2[3,3].c := 300;            globastatdualarraytrec2[3,3].recs := nil;
 
1579
      globastatdualarraytrec2[3,4].c := 301;            globastatdualarraytrec2[3,4].recs := nil;
 
1580
      globastatdualarraytrec2[4,3].c := 302;            globastatdualarraytrec2[4,3].recs := nil;
 
1581
 
 
1582
 
 
1583
      //       GlobAStatDynDynArrayTRec2  : array [3..5] of array of array of TRecForArray2;
 
1584
 
 
1585
      SetLength(GlobAStatDynDynArrayTRec2[3], 3);
 
1586
      SetLength(GlobAStatDynDynArrayTRec2[3][0], 2);
 
1587
      SetLength(GlobAStatDynDynArrayTRec2[3][1], 2);
 
1588
      SetLength(GlobAStatDynDynArrayTRec2[4], 3);
 
1589
      SetLength(GlobAStatDynDynArrayTRec2[4][0], 2);
 
1590
      SetLength(GlobAStatDynDynArrayTRec2[4][1], 2);
 
1591
      GlobAStatDynDynArrayTRec2[3][0][0].c := 300;
 
1592
      GlobAStatDynDynArrayTRec2[3][0][1].c := 301;
 
1593
      GlobAStatDynDynArrayTRec2[3][1][0].c := 310;
 
1594
      GlobAStatDynDynArrayTRec2[3][1][1].c := 311;
 
1595
      GlobAStatDynDynArrayTRec2[4][0][0].c := 400;
 
1596
      GlobAStatDynDynArrayTRec2[4][0][1].c := 401;
 
1597
      GlobAStatDynDynArrayTRec2[4][1][0].c := 410;
 
1598
      GlobAStatDynDynArrayTRec2[4][1][1].c := 411;
 
1599
 
 
1600
      SetLength(GlobADynDynStatArrayTRec2, 3);
 
1601
 
 
1602
    {$ENDIF}
 
1603
 
 
1604
    {$IFDEF Global_Body_NIL}
 
1605
    //begin
 
1606
    {$ENDIF}
 
1607
 
 
1608
  {%endregion}
 
1609
 
47
1610