mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-08 07:33:29 +02:00
84 lines
1.8 KiB
ObjectPascal
84 lines
1.8 KiB
ObjectPascal
program DwarfSetupBasic;
|
|
{$mode objfpc}{$H+}
|
|
{$IF FPC_FULLVERSION>=20701}
|
|
{$OPTIMIZATION NOREMOVEEMPTYPROCS}
|
|
{$OPTIMIZATION NOORDERFIELDS}
|
|
{$ENDIF}
|
|
{$OPTIMIZATION OFF}
|
|
{$A1}
|
|
|
|
// TODO: add integer, cardinal, ...
|
|
type
|
|
TEnum0 = (e0a);
|
|
TEnum1 = (e1a, e1b, e1c);
|
|
TEnum2 = (e2a, e2b, e2c, e2d, e2e, e2f, e2g, e2h, e2i);
|
|
TEnum3 = (e3a, e3b, e3c, e3d, e3e, e3f, e3g, e3h,
|
|
e3i, e3j, e3k, e3l, e3m, e3n, e3o, e3p,
|
|
e3q);
|
|
TEnumX = (eXa, eXc := 3, eXb := 10);
|
|
TEnumR3 = e3c..e3l;
|
|
|
|
TSet0 = Set of TEnum0;
|
|
TSet1 = Set of TEnum1;
|
|
TSet2 = Set of TEnum2;
|
|
TSet3 = Set of TEnum3;
|
|
TSetX1 = Set of (s1a, s1b, s1c);
|
|
TSetB1 = Set of Byte;
|
|
TSetB2 = Set of 5..80;
|
|
TSetC1 = Set of char;
|
|
TSetR3 = Set of TEnumR3;
|
|
|
|
var // Globals
|
|
VarEnum0: TEnum0;
|
|
VarEnum1: TEnum1;
|
|
VarEnum2: TEnum2;
|
|
VarEnum3: TEnum3;
|
|
VarEnumX: TEnumX;
|
|
VarEnumR3: TEnumR3;
|
|
|
|
VarSet0: TSet0;
|
|
VarSet1: TSet1;
|
|
VarSet2: TSet2;
|
|
VarSet3: TSet3;
|
|
VarSetX1: TSetX1;
|
|
VarSetX2: set of (sxa, sxb, sxc, sxd);
|
|
VarSetB1: TSetB1;
|
|
VarSetB2: TSetB2;
|
|
VarSetC1: TSetC1;
|
|
VarSetC2: set of char;
|
|
VarSetR3: TSetR3;
|
|
|
|
VarByte: Byte;
|
|
VarWord: word;
|
|
VarLong: cardinal;
|
|
|
|
VarRecEnum1: packed record Enum1: TEnum1; end;
|
|
VarRecEnum2: packed record Enum2: TEnum2; end;
|
|
VarRecSet1: packed record Set1: TSet1; end;
|
|
VarRecSet2: packed record Set2: TSet2; end;
|
|
VarRecSet3: packed record Set3: TSet3; end;
|
|
VarRecSetB1: packed record SetB1: TSetB1; end;
|
|
VarRecSetB2: packed record SetB2: TSetB2; end;
|
|
|
|
|
|
begin
|
|
VarEnum0 := e0a;
|
|
VarEnum1 := e1a;
|
|
VarEnum2 := e2a;
|
|
VarEnum3 := e3a;
|
|
VarEnumX := eXa;
|
|
|
|
VarSet0 := [];
|
|
VarSet1 := [];
|
|
VarSet2 := [];
|
|
VarSet3 := [];
|
|
VarSetX1 := [];
|
|
VarSetX2 := [];
|
|
VarSetB1 := [];
|
|
VarSetB2 := [];
|
|
VarSetC1 := [];
|
|
|
|
VarByte := 0;
|
|
VarRecEnum1.Enum1 := e1a;
|
|
end.
|