Pointless initializer.  Indeed, does C99 support the C++ idiom of: <code>
while (Class *cls = ClassTableIteratorNext(iter))
</code> ?  (Note that this doesn't suffer from the need for extra parentheses due to gcc warning about the suspected mistype of ==, since it clearly is meant to be an assignment.)