Wishlish: GCC option for explicit booleans
Nicholas Nethercote
njn@cs.utexas.edu
Mon Oct 3 02:07:00 GMT 2005
On Sat, 1 Oct 2005, pl@nch.com.au wrote:
> C++ would be a better language if the boolean type did not implicitly
> convert from int. For example, many novice programmers make the
> mistake.
>
> if (i = j) dosomething(); // Should be i == j
>
> If conversion to boolean required explicit this would all be solved. It
> would mean all the old code with expressions like "while (p) ... "
> would need to be changed to "while (p != NULL) ...". But I think the
> change would be well justified.
>
> What about a GCC option to turn off implicit conversion to boolean?
[~] more a.cpp
int main(void)
{
int i = 0, j = 0;
if (i = j)
return 0;
else
return 1;
}
[~] g++ -Wall a.cpp
a.cpp: In function `int main()':
a.cpp:4: warning: suggest parentheses around assignment used as truth value
Nick
More information about the Gcc
mailing list