On 2014-11-22 18.47, Timo Kreuzer wrote:
Am 22.11.2014 11:39, schrieb Love Nystrom:

On 2014-11-21 04.00, Timo Kreuzer wrote:
Am 20.11.2014 14:18, schrieb Love Nystrom:

Well... Actually not exactly the same.. ;)
"if (f != FALSE)" requires an explicit comparison with a second operand,
No, it does not. It requries the compiler to generate code that executes the following statement, when f is not 0.

I suspect we look at it from two different viewpoints here..
Yours is "C centric" and mine is "object code centric".
You talk about what the compiler is required to do,
and I talk about what comes out at the end of compilation.
You claimed '"if (f != FALSE)" requires an explicit comparison with a second operand,'

The "if (f != FALSE)" instruction has *two operands*, variable f and the immediate 0.
The "if ( f )" instruction has *one operand*, variable f.
However, according to you two plus one is four.

I'm outta here..
Perhaps I'll swing by in a few years and see if you've matured a bit, Mr Grand Master.

Tada