The bug is that a C Bool is
not false which is defined as any value except false ( = 0 ) and a Pascal Boolean (all types) were defined as either 0 or 1. This has been corrected. There is now a correct Bool type to interface with C code in trunk. This was an
FPC bug ( for a relatively short - some months, a year - period only) and not a
Zeos bug. Maybe Zeos needs to switch to the new Bool type, though.
A SQL query with
not false instead of true should always work, though. But FPC booleans (pascal booleans) are not suited for interfacing with C code as most database engines are written in C. The
Bool type now adheres to that, as was also previously the case. It was a rather serious regression that made me at some point very angry. (Actually real anger, not grumpy, I seldom have such strong negative vibes...
to paraphrase my fellow tank commander from Kelly's heroes. (odd ball))