File: WatchesValuePrgIdent.inc

package info (click to toggle)
lazarus 2.0.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 214,460 kB
  • sloc: pascal: 1,862,622; xml: 265,709; cpp: 56,595; sh: 3,008; java: 609; makefile: 535; perl: 297; sql: 222; ansic: 137
file content (315 lines) | stat: -rw-r--r-- 23,164 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
{$DEFINE _BLOCK_}

// ADD max 15

  pre__Byte{e}          _OP_ Byte        (1                    + ADD);
  pre__Word{e}          _OP_ Word        (100                  + ADD);
  pre__Longword{e}      _OP_ Longword    (1000                 + ADD);
  pre__QWord{e}         _OP_ QWord       (10000                + ADD);
  pre__Shortint{e}      _OP_ Shortint    (50                   + ADD);
  pre__Smallint{e}      _OP_ Smallint    (500                  + ADD);
  pre__Longint{e}       _OP_ Longint     (5000                 + ADD);
  pre__Int64{e}         _OP_ Int64       (50000                + ADD);
  pre__IntRange{e}      _OP_ TIntRange   (-50                  + ADD);
  pre__CardinalRange{e} _OP_ TCardinalRange(50                  + ADD);

  pre__Byte_2{e}        _OP_ Byte        (240                  + ADD);
  pre__Word_2{e}        _OP_ Word        (65501                + ADD);
  pre__Longword_2{e}    _OP_ Longword    (4123456789           + ADD);
  pre__QWord_2{e}       _OP_ QWord       (15446744073709551610 + ADD);
  pre__Shortint_2{e}    _OP_ Shortint    (112                  + ADD);
  pre__Smallint_2{e}    _OP_ Smallint    (32012                + ADD);
  pre__Longint_2{e}     _OP_ Longint     (20123456             + ADD);
  pre__Int64_2{e}       _OP_ Int64       (9123372036854775801  + ADD);

  pre__Shortint_3{e}    _OP_ Shortint    (-112                 + ADD);
  pre__Smallint_3{e}    _OP_ Smallint    (-32012               + ADD);
  pre__Longint_3{e}     _OP_ Longint     (-20123456            + ADD);
  pre__Int64_3{e}       _OP_ Int64       (-9123372036854775801 + ADD);

  pre__Real{e}          _OP_ Real        (50.25                + ADD);
  pre__Single{e}        _OP_ Single      (100.125              + ADD);
  pre__Double{e}        _OP_ Double      (1000.125             + ADD);
  pre__Extended{e}      _OP_ Extended    (10000.175            + ADD);
  //pre__Comp{e}        _OP_ Comp        (50.125               + ADD);
  pre__Currency{e}      _OP_ Currency    (125.123              + ADD);

  pre__Real_2{e}        _OP_ Real        (-50.25               + ADD);
  pre__Single_2{e}      _OP_ Single      (-100.125             + ADD);
  pre__Double_2{e}      _OP_ Double      (-1000.125            + ADD);
  pre__Extended_2{e}    _OP_ Extended    (-10000.175           + ADD);
  //pre__Comp_2{e}      _OP_ Comp        (-150.125             + ADD);
  pre__Currency_2{e}    _OP_ Currency    (-125.123             + ADD);

  // **** Char and String types ****

  pre__Char{e}          _OP_ char        (CHR1                    );
  pre__Char2{e}         _OP_ char        (#0                      );
  pre__Char3{e}         _OP_ char        (' '                     );

  pre__String1{e}       _OP_ ShortStr1   (CHR1+''                 );
  pre__String1e{e}      _OP_ ShortStr1   (     ''                 );
  pre__String10{e}      _OP_ ShortStr10  (CHR1+'bc1'              );
  pre__String10e{e}     _OP_ ShortStr10  (     ''                 );
  pre__String10x{e}     _OP_ ShortStr10  (CHR1+'S'#0'B'#9'b'#10#13);
  pre__String255{e}     _OP_ ShortStr255 (CHR1+'bcd0123456789'    );
  pre__Ansi1{e}         _OP_ AnsiString  (succ(CHR1)              );
  pre__Ansi2{e}         _OP_ AnsiString  (CHR1+'abcd0123'         );
  pre__Ansi3{e}         _OP_ AnsiString  (     ''                 );
  pre__Ansi4{e}         _OP_ TStrA       (CHR1+'A'#0'B'#9'b'#10#13);
  pre__Ansi5{e}         _OP_ AnsiString  (CHR1+'bcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghij');

  pre__PChar{e}         _OP_ PChar       ( nil );
  pre__PChar2{e}        _OP_ TPChr       ( nil );
  {$IFDEF TestAssign}
  pre__PChar2{e} := @pre__Ansi2{e}[1];
  {$ENDIF}

  pre__WideChar{e}      _OP_ char        (CHR1                    );
  pre__WideChar2{e}     _OP_ char        (#0                      );
  pre__WideChar3{e}     _OP_ char        (' '                     );

  pre__WideString1{e}   _OP_ WideString  (succ(CHR1)              );
  pre__WideString2{e}   _OP_ WideString  (CHR1+'abcX0123'         );
  pre__WideString3{e}   _OP_ WideString  (     ''                 );
  pre__WideString4{e}   _OP_ TWStrA      (CHR1+'A'#0'X'#9'b'#10#13);
  pre__WideString5{e}   _OP_ TWStrTA     (CHR1+'XcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghijAbcdefghij');

  pre__PWideChar{e}     _OP_ PWideChar   ( nil );
  pre__PWideChar2{e}    _OP_ TPWChr      ( nil );
  {$IFDEF TestAssign}
  pre__PWideChar2{e} := @pre__WideString2{e}[1];
  {$ENDIF}

// wide string char...

  // types that may get confused with strings

  {$IFnDEF TestAssign}
  pre__ShortRec{e}       _O2_ TShortRec               _EQ_      (length: 5; st:  (CHR1, 'b',CHR1, 'b','c'));
  {$ELSE}
  pre__ShortRec{e}       := _pre2_ShortRec;   pre__ShortRec{e}.st[1] := CHR1; pre__ShortRec{e}.st[3] := CHR1;
  {$ENDIF}

  // **** ARRAY ****
  // **** Dyn ARRAY ****

  pre__CharDynArray{e}    _O2_ array of char          _EQ_      (nil);  // open array if used as function arg
  pre__CharDynArray2{e}   _O2_ array of char          _EQ_      (nil);  // len = 3 // open array if used as function arg
  pre__CharDynArray3{e}   _O2_ TCharDynArray          _EQ_      (nil);
  pre__CharDynArray4{e}   _O2_ TCharDynArray          _EQ_      (nil);  // len = 3

  pre__WCharDynArray{e}   _O2_ array of widechar      _EQ_      (nil);
  pre__WCharDynArray2{e}  _O2_ array of widechar      _EQ_      (nil);  // len = 3
  pre__WCharDynArray3{e}  _O2_ TWCharDynArray         _EQ_      (nil);
  pre__WCharDynArray4{e}  _O2_ TWCharDynArray         _EQ_      (nil);  // len = 3

  pre__IntDynArray{e}    _O2_ array of Integer        _EQ_      (nil);  // open array if used as function arg
  pre__IntDynArray2{e}   _O2_ array of Integer        _EQ_      (nil);  // len = 3 // open array if used as function arg
  pre__IntDynArray3{e}   _O2_ TIntDynArray            _EQ_      (nil);
  pre__IntDynArray4{e}   _O2_ TIntDynArray            _EQ_      (nil);  // len = 3

  pre__AnsiDynArray{e}    _O2_ array of AnsiString    _EQ_      (nil);  // open array if used as function arg
  pre__AnsiDynArray2{e}   _O2_ array of AnsiString    _EQ_      (nil);  // len = 3 // open array if used as function arg
  pre__AnsiDynArray3{e}   _O2_ TAnsiDynArray          _EQ_      (nil);
  pre__AnsiDynArray4{e}   _O2_ TAnsiDynArray          _EQ_      (nil);  // len = 3

  pre__ShortStrDynArray{e}    _O2_ array of ShortStr10 _EQ_      (nil);  // open array if used as function arg
  pre__ShortStrDynArray2{e}   _O2_ array of ShortStr10 _EQ_      (nil);  // len = 3 // open array if used as function arg
  pre__ShortStrDynArray3{e}   _O2_ TShortStrDynArray   _EQ_      (nil);
  pre__ShortStrDynArray4{e}   _O2_ TShortStrDynArray   _EQ_      (nil);  // len = 3

  pre__DynDynArrayInt{e}      _O2_ TDynDynArrayInt     _EQ_      (nil);
  pre__DynDynArrayInt2{e}     _O2_ TDynDynArrayInt     _EQ_      (nil);

  pre__FiveDynArray{e}             _O2_ TFiveDynArray            _EQ_ (nil);
  pre__FiveDynArrayPack{e}         _O2_ TFiveDynArrayPack        _EQ_ (nil);
  pre__FivePackDynArray{e}         _O2_ TFivePackDynArray        _EQ_ (nil);
  pre__FivePackDynArrayPack{e}     _O2_ TFivePackDynArrayPack    _EQ_ (nil);
  pre__RecFiveDynArray{e}          _O2_ TRecFiveDynArray         _EQ_ (nil);
  pre__RecFiveDynPackArray{e}      _O2_ TRecFiveDynPackArray     _EQ_ (nil);
  pre__RecFivePackDynArray{e}      _O2_ TRecFivePackDynArray     _EQ_ (nil);
  pre__RecFivePackDynPackArray{e}  _O2_ TRecFivePackDynPackArray _EQ_ (nil);
{$IFnDEF TestParam}
{$IFnDEF TestArg}
  pre__FiveDynArray2{e}            _O2_        array of          record a:longint; b: byte end _EQ_ (nil);
  pre__FiveDynArrayPack2{e}        _O2_ packed array of          record a:longint; b: byte end _EQ_ (nil);
  pre__FivePackDynArray2{e}        _O2_        array of   packed record a:longint; b: byte end _EQ_ (nil);
  pre__FivePackDynArrayPack2{e}    _O2_ packed array of   packed record a:longint; b: byte end _EQ_ (nil);
{$ENDIF}
{$ENDIF}

  {$IFDEF TestAssign}
  SetLength(pre__CharDynArray2    {e}, 3);    pre__CharDynArray2{e}[0]     _OP_ 'N';
                                              pre__CharDynArray2{e}[1]     _OP_ CHR1;
                                              pre__CharDynArray2{e}[2]     _OP_ 'M';
  SetLength(pre__CharDynArray4    {e}, 3);    pre__CharDynArray4{e}[0]     _OP_ 'J';
                                              pre__CharDynArray4{e}[1]     _OP_ CHR1;
                                              pre__CharDynArray4{e}[2]     _OP_ 'M';

  SetLength(pre__WCharDynArray2   {e}, 3);    pre__WCharDynArray2{e}[0]    _OP_ 'W';
                                              pre__WCharDynArray2{e}[1]    _OP_ CHR1;
                                              pre__WCharDynArray2{e}[2]    _OP_ 'M';
  SetLength(pre__WCharDynArray4   {e}, 3);    pre__WCharDynArray4{e}[0]    _OP_ 'K';
                                              pre__WCharDynArray4{e}[1]    _OP_ CHR1;
                                              pre__WCharDynArray4{e}[2]    _OP_ 'M';

  SetLength(pre__IntDynArray2     {e}, 3);    pre__IntDynArray2{e}[0]      _OP_ 11;
                                              pre__IntDynArray2{e}[1]      _OP_ 30+ADD;
                                              pre__IntDynArray2{e}[2]      _OP_ 60;
  SetLength(pre__IntDynArray4     {e}, 3);    pre__IntDynArray4{e}[0]      _OP_ 12;
                                              pre__IntDynArray4{e}[1]      _OP_ 30+ADD;
                                              pre__IntDynArray4{e}[2]      _OP_ 60;

  SetLength(pre__AnsiDynArray2    {e}, 3);    pre__AnsiDynArray2{e}[0]     _OP_ 'N123';
                                              pre__AnsiDynArray2{e}[1]     _OP_ CHR1+'ab';
                                              pre__AnsiDynArray2{e}[2]     _OP_ 'M'#9;
  SetLength(pre__AnsiDynArray4    {e}, 3);    pre__AnsiDynArray4{e}[0]     _OP_ 'J123';
                                              pre__AnsiDynArray4{e}[1]     _OP_ CHR1+'ab';
                                              pre__AnsiDynArray4{e}[2]     _OP_ 'M'#9;

  SetLength(pre__ShortStrDynArray2{e}, 3);    pre__ShortStrDynArray2{e}[0] _OP_ 'N123';
                                              pre__ShortStrDynArray2{e}[1] _OP_ CHR1+'ac';
                                              pre__ShortStrDynArray2{e}[2] _OP_ 'M'#9;
  SetLength(pre__ShortStrDynArray4{e}, 3);    pre__ShortStrDynArray4{e}[0] _OP_ 'J123';
                                              pre__ShortStrDynArray4{e}[1] _OP_ CHR1+'ac';
                                              pre__ShortStrDynArray4{e}[2] _OP_ 'M'#9;

  SetLength(pre__DynDynArrayInt{e}, 5);
  SetLength(pre__DynDynArrayInt{e}[0], 3);    pre__DynDynArrayInt{e}[0][0] := 11+ADD;
                                              pre__DynDynArrayInt{e}[0][1] := 0;
                                              pre__DynDynArrayInt{e}[0][2] := -22;
  SetLength(pre__DynDynArrayInt{e}[1], 1);    pre__DynDynArrayInt{e}[1][0] := 110+ADD;
            pre__DynDynArrayInt{e}[2]  := pre__DynDynArrayInt{e}[0];
  SetLength(pre__DynDynArrayInt{e}[3], 0);
  SetLength(pre__DynDynArrayInt{e}[4], 4);    pre__DynDynArrayInt{e}[4][0] := 11;
                                              pre__DynDynArrayInt{e}[4][1] := 12;
                                              pre__DynDynArrayInt{e}[4][2] := 11;
                                              pre__DynDynArrayInt{e}[4][3] := 10;
  pre__DynDynArrayInt2 := pre__DynDynArrayInt;

  SetLength(pre__FiveDynArray           {e},3); pre__FiveDynArray           {e}[0].a _OP_ -1-ADD; pre__FiveDynArray           {e}[0].b _OP_ 11;
                                                pre__FiveDynArray           {e}[1].a _OP_ -2-ADD; pre__FiveDynArray           {e}[1].b _OP_ 22;
                                                pre__FiveDynArray           {e}[2].a _OP_ -3-ADD; pre__FiveDynArray           {e}[2].b _OP_ 33;
  SetLength(pre__FiveDynArrayPack       {e},3); pre__FiveDynArrayPack       {e}[0].a _OP_ -1-ADD; pre__FiveDynArrayPack       {e}[0].b _OP_ 11;
                                                pre__FiveDynArrayPack       {e}[1].a _OP_ -2-ADD; pre__FiveDynArrayPack       {e}[1].b _OP_ 22;
                                                pre__FiveDynArrayPack       {e}[2].a _OP_ -3-ADD; pre__FiveDynArrayPack       {e}[2].b _OP_ 33;
  SetLength(pre__FivePackDynArray       {e},3); pre__FivePackDynArray       {e}[0].a _OP_ -1-ADD; pre__FivePackDynArray       {e}[0].b _OP_ 11;
                                                pre__FivePackDynArray       {e}[1].a _OP_ -2-ADD; pre__FivePackDynArray       {e}[1].b _OP_ 22;
                                                pre__FivePackDynArray       {e}[2].a _OP_ -3-ADD; pre__FivePackDynArray       {e}[2].b _OP_ 33;
  SetLength(pre__FivePackDynArrayPack   {e},3); pre__FivePackDynArrayPack   {e}[0].a _OP_ -1-ADD; pre__FivePackDynArrayPack   {e}[0].b _OP_ 11;
                                                pre__FivePackDynArrayPack   {e}[1].a _OP_ -2-ADD; pre__FivePackDynArrayPack   {e}[1].b _OP_ 22;
                                                pre__FivePackDynArrayPack   {e}[2].a _OP_ -3-ADD; pre__FivePackDynArrayPack   {e}[2].b _OP_ 33;
  SetLength(pre__RecFiveDynArray        {e},3); pre__RecFiveDynArray        {e}[0].a _OP_ -1-ADD; pre__RecFiveDynArray        {e}[0].b _OP_ 11;
                                                pre__RecFiveDynArray        {e}[1].a _OP_ -2-ADD; pre__RecFiveDynArray        {e}[1].b _OP_ 22;
                                                pre__RecFiveDynArray        {e}[2].a _OP_ -3-ADD; pre__RecFiveDynArray        {e}[2].b _OP_ 33;
  SetLength(pre__RecFiveDynPackArray    {e},3); pre__RecFiveDynPackArray    {e}[0].a _OP_ -1-ADD; pre__RecFiveDynPackArray    {e}[0].b _OP_ 11;
                                                pre__RecFiveDynPackArray    {e}[1].a _OP_ -2-ADD; pre__RecFiveDynPackArray    {e}[1].b _OP_ 22;
                                                pre__RecFiveDynPackArray    {e}[2].a _OP_ -3-ADD; pre__RecFiveDynPackArray    {e}[2].b _OP_ 33;
  SetLength(pre__RecFivePackDynArray    {e},3); pre__RecFivePackDynArray    {e}[0].a _OP_ -1-ADD; pre__RecFivePackDynArray    {e}[0].b _OP_ 11;
                                                pre__RecFivePackDynArray    {e}[1].a _OP_ -2-ADD; pre__RecFivePackDynArray    {e}[1].b _OP_ 22;
                                                pre__RecFivePackDynArray    {e}[2].a _OP_ -3-ADD; pre__RecFivePackDynArray    {e}[2].b _OP_ 33;
  SetLength(pre__RecFivePackDynPackArray{e},3); pre__RecFivePackDynPackArray{e}[0].a _OP_ -1-ADD; pre__RecFivePackDynPackArray{e}[0].b _OP_ 11;
                                                pre__RecFivePackDynPackArray{e}[1].a _OP_ -2-ADD; pre__RecFivePackDynPackArray{e}[1].b _OP_ 22;
                                                pre__RecFivePackDynPackArray{e}[2].a _OP_ -3-ADD; pre__RecFivePackDynPackArray{e}[2].b _OP_ 33;
  SetLength(pre__FiveDynArray2          {e},3); pre__FiveDynArray2          {e}[0].a _OP_ -1-ADD; pre__FiveDynArray2          {e}[0].b _OP_ 11;
                                                pre__FiveDynArray2          {e}[1].a _OP_ -2-ADD; pre__FiveDynArray2          {e}[1].b _OP_ 22;
                                                pre__FiveDynArray2          {e}[2].a _OP_ -3-ADD; pre__FiveDynArray2          {e}[2].b _OP_ 33;
  SetLength(pre__FiveDynArrayPack2      {e},3); pre__FiveDynArrayPack2      {e}[0].a _OP_ -1-ADD; pre__FiveDynArrayPack2      {e}[0].b _OP_ 11;
                                                pre__FiveDynArrayPack2      {e}[1].a _OP_ -2-ADD; pre__FiveDynArrayPack2      {e}[1].b _OP_ 22;
                                                pre__FiveDynArrayPack2      {e}[2].a _OP_ -3-ADD; pre__FiveDynArrayPack2      {e}[2].b _OP_ 33;
  SetLength(pre__FivePackDynArray2      {e},3); pre__FivePackDynArray2      {e}[0].a _OP_ -1-ADD; pre__FivePackDynArray2      {e}[0].b _OP_ 11;
                                                pre__FivePackDynArray2      {e}[1].a _OP_ -2-ADD; pre__FivePackDynArray2      {e}[1].b _OP_ 22;
                                                pre__FivePackDynArray2      {e}[2].a _OP_ -3-ADD; pre__FivePackDynArray2      {e}[2].b _OP_ 33;
  SetLength(pre__FivePackDynArrayPack2  {e},3); pre__FivePackDynArrayPack2  {e}[0].a _OP_ -1-ADD; pre__FivePackDynArrayPack2  {e}[0].b _OP_ 11;
                                                pre__FivePackDynArrayPack2  {e}[1].a _OP_ -2-ADD; pre__FivePackDynArrayPack2  {e}[1].b _OP_ 22;
                                                pre__FivePackDynArrayPack2  {e}[2].a _OP_ -3-ADD; pre__FivePackDynArrayPack2  {e}[2].b _OP_ 33;
  {$ENDIF}

  // **** Static ARRAY ****
{$IFnDEF TestParam}
{$IFnDEF TestArg}
  {$IFnDEF TestAssign}
  pre__CharStatArray{e}     _O2_ array[1..5] of char       _EQ_      (CHR1, 'b',CHR1, 'B','c');
  pre__WCharStatArray{e}    _O2_ array[1..5] of widechar   _EQ_      (CHR1, 'b',CHR1, 'B','d');
  pre__IntStatArray{e}      _O2_ array[1..5] of Integer    _EQ_      (-1, 300+ADD, 2, 0, 1);
  pre__AnsiStatArray{e}     _O2_ array[1..5] of AnsiString _EQ_      (CHR1, 'b123',CHR1+'ab', 'B','cdef'#9);
  pre__ShortStrStatArray{e} _O2_ array[1..5] of ShortStr10 _EQ_      (CHR1, 'b123',CHR1+'ab', 'C','cdef'#9);

//  pre__FiveStatArray2{e}         _O2_        array [2..4] of        record a:longint; b: byte end _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
//  pre__FiveStatArrayPack2{e}     _O2_ packed array [2..4] of        record a:longint; b: byte end _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
//  pre__FivePackStatArray2{e}     _O2_        array [2..4] of packed record a:longint; b: byte end _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
//  pre__FivePackStatArrayPack2{e} _O2_ packed array [2..4] of packed record a:longint; b: byte end _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  {$ELSE}
  pre__CharStatArray{e}     := _pre2_CharStatArray;    pre__CharStatArray{e}[1]  := CHR1;    pre__CharStatArray{e}[3] := CHR1;
  pre__WCharStatArray{e}    := _pre2_WCharStatArray;   pre__WCharStatArray{e}[1] := CHR1;   pre__WCharStatArray{e}[3] := CHR1;
  pre__IntStatArray{e}      := _pre2_IntStatArray;     pre__IntStatArray{e}[2]   := 300+ADD;
  pre__AnsiStatArray{e}     := _pre2_AnsiStatArray;    pre__AnsiStatArray{e}[1]  := CHR1;    pre__AnsiStatArray{e}[3] := CHR1+'ab';
  pre__ShortStrStatArray{e} := _pre2_ShortStrStatArray;pre__ShortStrStatArray{e}[1] := CHR1;pre__ShortStrStatArray{e}[3] := CHR1+'ab';

//  pre__FiveStatArray2{e}         := _pre2_FiveStatArray2;         pre__FiveStatArray2{e}        [3].a := -8-ADD;
//  pre__FiveStatArrayPack2{e}     := _pre2_FiveStatArrayPack2;     pre__FiveStatArrayPack2{e}    [3].a := -8-ADD;
//  pre__FivePackStatArray2{e}     := _pre2_FivePackStatArray2;     pre__FivePackStatArray2{e}    [3].a := -8-ADD;
//  pre__FivePackStatArrayPack2{e} := _pre2_FivePackStatArrayPack2; pre__FivePackStatArrayPack2{e}[3].a := -8-ADD;
  {$ENDIF}
{$ENDIF}
{$ENDIF}

  {$IFnDEF TestAssign}
  pre__CharStatArray2{e}     _O2_ TCharStatArray         _EQ_      (CHR1, 'c',CHR1, 'B','c');
  pre__WCharStatArray2{e}    _O2_ TWCharStatArray        _EQ_      (CHR1, 'c',CHR1, 'B','d');
  pre__IntStatArray2{e}      _O2_ TIntStatArray          _EQ_      (-2, 200+ADD, 2, 0, 1);
  pre__AnsiStatArray2{e}     _O2_ TAnsiStatArray         _EQ_      (CHR1, 'c123',CHR1+'ad', 'D','cxx'#9);
  pre__ShortStrStatArray2{e} _O2_ TShortStrStatArray     _EQ_      (CHR1, 'c123',CHR1+'ad', 'C','cxx'#9);

  pre__FiveStatArray{e}             _O2_ TFiveStatArray            _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__FiveStatArrayPack{e}         _O2_ TFiveStatArrayPack        _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__FivePackStatArray{e}         _O2_ TFivePackStatArray        _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__FivePackStatArrayPack{e}     _O2_ TFivePackStatArrayPack    _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__RecFiveStatArray{e}          _O2_ TRecFiveStatArray         _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__RecFiveStatPackArray{e}      _O2_ TRecFiveStatPackArray     _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__RecFivePackStatArray{e}      _O2_ TRecFivePackStatArray     _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  pre__RecFivePackStatPackArray{e}  _O2_ TRecFivePackStatPackArray _EQ_ ((a:-9;b:44), (a:-8-ADD;b:33), (a:-7;b:22));
  {$ELSE}
  pre__CharStatArray2{e}     := _pre2_CharStatArray2;    pre__CharStatArray2{e}[1]  := CHR1;    pre__CharStatArray2{e}[3] := CHR1;
  pre__WCharStatArray2{e}    := _pre2_WCharStatArray2;   pre__WCharStatArray2{e}[1] := CHR1;   pre__WCharStatArray2{e}[3] := CHR1;
  pre__IntStatArray2{e}      := _pre2_IntStatArray2;     pre__IntStatArray2{e}[2]   := 200+ADD;
  pre__AnsiStatArray2{e}     := _pre2_AnsiStatArray2;    pre__AnsiStatArray2{e}[1]  := CHR1;    pre__AnsiStatArray2{e}[3] := CHR1+'ad';
  pre__ShortStrStatArray2{e} := _pre2_ShortStrStatArray2;pre__ShortStrStatArray2{e}[1] := CHR1;pre__ShortStrStatArray2{e}[3] := CHR1+'ad';

  pre__FiveStatArray{e}            := _pre2_FiveStatArray;            pre__FiveStatArray{e}           [3].a := -8-ADD;
  pre__FiveStatArrayPack{e}        := _pre2_FiveStatArrayPack;        pre__FiveStatArrayPack{e}       [3].a := -8-ADD;
  pre__FivePackStatArray{e}        := _pre2_FivePackStatArray;        pre__FivePackStatArray{e}       [3].a := -8-ADD;
  pre__FivePackStatArrayPack{e}    := _pre2_FivePackStatArrayPack;    pre__FivePackStatArrayPack{e}   [3].a := -8-ADD;
  pre__RecFiveStatArray{e}         := _pre2_RecFiveStatArray;         pre__RecFiveStatArray{e}        [3].a := -8-ADD;
  pre__RecFiveStatPackArray{e}     := _pre2_RecFiveStatPackArray;     pre__RecFiveStatPackArray{e}    [3].a := -8-ADD;
  pre__RecFivePackStatArray{e}     := _pre2_RecFivePackStatArray;     pre__RecFivePackStatArray{e}    [3].a := -8-ADD;
  pre__RecFivePackStatPackArray{e} := _pre2_RecFivePackStatPackArray; pre__RecFivePackStatPackArray{e}[3].a := -8-ADD;
  {$ENDIF}

  pre__Enum{e}  _OP_ TEnum(EnVal3);
  pre__Enum1{e} _OP_ TEnumSub(EnVal2); // subset
  pre__Enum2{e} _OP_ TEnum2(EnVal21);
  pre__Enum3{e} _OP_ TEnum2(EnVal25);

  pre__Set{e} _OP_ TSet([EnVal2, EnVal4]);


  {$IFnDEF TestAssign}
  pre__FiveRec{e}             _O2_ TRecordFive      _EQ_ (a:-22-ADD;b:44);
  {$ELSE}
  pre__FiveRec{e}   := _pre2_FiveRec;       pre__FiveRec{e}.a := -22-ADD;
  {$ENDIF}


// array dyn/stat / nested of record/class/char/num ... bitpacked
// record
// object
// class
// class of
// type

// pointer / deref for all above

{$UNDEF _BLOCK_}