De mémoire, la raison de l'identité bool == int est que les premières versions du C++ (ou du C ?) n'avait pas de type booléan et que l'on utilisait un entier à la place. Par compatibilité, c'est...