"Prof A Olowofoyeku (The African Chief)" wrote:
On 15 Dec 2002 at 3:33, Frank Heckenbach wrote:
... snip ...
Because only such a strange type (strange especially if used with Boolean semantics) would warrant using `Boolean (32)' in Pascal.
Not at all. See my other post. You cannot use an 8-bit or 16-bit value when the WinAPI expects an argument (and sometimes, even function results) to be 32-bits in size. Borland's solution is to predefine 8- bit (Boolean and ByteBool), 16-bit (WordBool) and 32-bit (LongBool) boolean types, and then to define BOOL as LongBool, for the WinAPI routines. If GPC can predefine all these, plus things like LongLongBool (64-bit) and LongestBool (128-bit?) then, we can avoid "Boolean (32)". But the problem will still be there when we need to define a data type of a specific size that is not the default size.
VAR truth : boolean; .... sillywinapi(ord(truth));
which probably generates no extra code.