Wieso hab ich das gepostet?
Hab es "gefährlich" genannt und genug Gründe erwähnt es besser sowas nicht zu machen, was Uwe auch grade nochmal anschaulich demonstriert hat.
(bis auf spezielle Sonderfälle macht man sowas einfach nicht, welche hier nicht vorliegen, wenn man die Funktion reparieren würde)
True ist nunmal nicht als 1 (die Konstante True) deklariert, sondern als <>0, was die automatische Booleanauswertung ordentlich berücksichtigt.