[fpc-pascal] when will the size of an enumerated type change?
Michael Van Canneyt
michael at freepascal.org
Wed Jan 9 16:49:08 CET 2019
On Wed, 9 Jan 2019, Dennis wrote:
> TComparisonMode = (cmThisOnly, cmThisAndThat, cmThisOrThat);
> TMyClass = class
> ComparisonMode : TComparisonMode;
> I discovered that, the sizeof(ComparisonMode) seem to be different
> depending on whether the type TComparisonMode is defined in the same
> unit file or in another unit file.
> Is that possible?
If the units are compiled using different settings, yes.
> I cannot create a simple test file to test it because the problem only
> appears in my big project.
> Does FPC always produce a 4 byte variable for an enumerated types?
No, it depends on the $mode directive and the settings of the packenum directive.
More information about the fpc-pascal