Perhaps you need the {$PACKENUM n} compiler directive for the enumerated type?
On 02/10/13 18:09, Juha Manninen wrote: > If I have have a set with < 9 elements, like : > > type > TMyEnum = ( > xOne, > xTwo, > xThree, > xFour, > xFive > ); > // Count <= 8, fits in one Byte > TMyEnums = set of TMyEnum; > > then in Delphi a variable of that type can be casted to Byte. Other > casts don't work. > In FPC I must cast it to Integer! > Does it really mean that all sets in FPC reserve at least 32 bits? Is > it documented? I did not find it as "Set" gives so many false matches. > > I hope the implementation is otherwise compatible with Delphi, meaning > that the bits start from LSB always. I rely now on this implementation > detail. There is code that transfers bitfields between computers. > Using type checking and descriptive names makes the code better in > many ways, compared to using integers & AND operator. > > Juha > _______________________________________________ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > http://lists.freepascal.org/mailman/listinfo/fpc-pascal > _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal