For updates about the lack of updates: click click click .
Preventing C assignment/equality mismatches with lvalues:
This will compile without errors (most comiplers have warnings for
this if you enable them):
while (foo = NULL)
{ ... }
The pointer foo will be set to NULL and the loopwill never be entered.
On the other hand, trying to build the following will always generate
an error:
while (NULL = foo)
{ ... }
test.c: In function `main':
test.c:7: error: invalid lvalue in assignment
On the other other hand, it looks pretty ugly.