#define nb_is_end_of_statement(X)  ((X) <= NB_TOKEN_LINE_ELSE)

nb_is_end_of_statement returns whether the token X is an end of statement token.

Logically, this is X == NB_TOKEN_EOL || X == NB_TOKEN_PAD || X == NB_TOKEN_COLON..., but by using the fact that all these tokens are grouped together about zero, a much simpler test is used. A statement is ended by an in-line remark, the introduction of an ELSE, a statement separator, or a real end of line.