|
@@ -2,13 +2,17 @@
|
|
|
// writing and reading of rtti for enums, both "dense" and
|
|
|
// "sparse" enumerations (different rtti is generated and
|
|
|
// different code used for generating and reading)
|
|
|
-{$mode objfpc}
|
|
|
type
|
|
|
+ // "dense" unnamed enumeration
|
|
|
+ Txx = set of (_one, _two, _three);
|
|
|
+ // "sparse" unnamed enumeration
|
|
|
+ Tyy = set of (_zero := 0, _ten := 10, _twenty := 20);
|
|
|
+
|
|
|
// "dense" enumeration
|
|
|
Tx = (one,two,three);
|
|
|
Txxx = set of Tx;
|
|
|
// "sparse" enumeration
|
|
|
- Ty =(zero := 0, ten := 10, twenty := 20);
|
|
|
+ Ty = (zero := 0, ten := 10, twenty := 20);
|
|
|
Tyyy = set of Ty;
|
|
|
|
|
|
procedure error(number : longint);
|
|
@@ -21,8 +25,17 @@ var
|
|
|
x : txxx;
|
|
|
y : tyyy;
|
|
|
err : word;
|
|
|
+
|
|
|
+ _x : txx;
|
|
|
+ _y : tyy;
|
|
|
|
|
|
begin
|
|
|
+ writeln(low(_x));
|
|
|
+ writeln(high(_x));
|
|
|
+
|
|
|
+ writeln(low(_y));
|
|
|
+ writeln(high(_y));
|
|
|
+
|
|
|
writeln(low(x));
|
|
|
writeln(high(x));
|
|
|
|