Nisam konkretno govorio za bool već za vrijednost "true".
Pa onda si me krivo razumio, ja jesam rekao da je "true" sve što je različito od nule...
Može biti. Sorry ako je tako.
I da se nadovežem na Flokija, jedan od najvećih problema C++a je upravo to što je mnoštvo stvari dopušteno (poput gornjeg primjera pridruživanja, višestrukog nasljeđivanja klasa itd. itd.), i onda to ljudi koriste "zdravo-za-gotovo" bez da su dovoljno upućeni u pozadinu priče i kakve su moguće implikacije. Primjerice, imam neke (malo naprednije) studente koji me pokušavaju impresionirati kada koriste polimorfizam. Pointer bazne klase postavi kao argument funkcije, a u samoj funkciji pretvorbu objekta na više vrši pomoću reinterpret_cast, a meni se samo digne kosa na glavi.
Veće restrikcije bi svakako bilo poželjno uvesti, ili bar uključiti "treat warnings as errors" u postavkama compilera.