Alzo la posta con un pezzo di codice:
int* p; //in realta' preso da un'altra parte
bool b = !--*--p;
Certo, in C++ e' lecito decrementare un puntatore, poi deferenziarlo, poi decrementare il dato puntato, poi castare implicito il risultato a bool e poi negarlo, e si', l'ordine degli operatori e' buono, pero' perdio, una 5-hit combo di operatori unari senza una parentesi o un risultato intermedio no ._.