//===---------------------------------------------------------------------===//
// Minor random things that can be improved
//===---------------------------------------------------------------------===//


Warn about "X && 0x1000" saying that the user may mean "X & 0x1000".
We should do this for any immediate except zero, so long as it doesn't come 
from a macro expansion.  Likewise for ||.

//===---------------------------------------------------------------------===//

Lexer-related diagnostics should point to the problematic character, not the
start of the token.  For example:

int y = 0000\
00080;

diag.c:4:9: error: invalid digit '8' in octal constant
int y = 0000\
        ^

should be:

diag.c:4:9: error: invalid digit '8' in octal constant
00080;
   ^

This specific diagnostic is implemented, but others should be updated.

//===---------------------------------------------------------------------===//

C++ (checker): For iterators, warn of the use of "iterator++" instead
  of "++iterator" when when the value returned by operator++(int) is
  ignored.
