diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index e42c76474c84..fc05b53cccdc 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2000-03-01 Cor Veenman + + * typeck.c (convert_for_assignment): Warn about conversion to bool. + 2000-03-01 Bernd Schmidt * typeck.c (maybe_warn_about_returning_address_of_local): Reorganize diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c index dd246afd8251..b0f1b054667b 100644 --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -6487,6 +6487,15 @@ convert_for_assignment (type, rhs, errtype, fndecl, parmnum) else cp_warning ("%s to `%T' from `%T'", errtype, type, rhstype); } + /* And warn about assigning non-BOOLEAN_TYPE to BOOLEAN_TYPE. */ + else if (coder != BOOLEAN_TYPE && codel == BOOLEAN_TYPE) + { + if (fndecl) + cp_warning ("`%T' used for argument %P of `%D'", + rhstype, parmnum, fndecl); + else + cp_warning ("%s to `%T' from `%T'", errtype, type, rhstype); + } /* And warn about assigning a negative value to an unsigned variable. */ else if (TREE_UNSIGNED (type) && codel != BOOLEAN_TYPE)