------- Comment #9 from mmitchel at gcc dot gnu dot org  2007-02-26 20:19 
-------
I'm sorry; I did apparently misunderstand.  My reading of the report was that x
did not become 2, and that this made the submitter unhappy.

I agree that x should not become 2.  Although "2" is a valid *representation*
of "true", converting "x" to "int" must yield "1", not "2".  So, either we need
conversion code, or we need to avoid "x" being "2" in the first place.  The
latter is clearly more efficient.

Either the C++ front end or the middle end should transform any "++" operation
on "bool" to "= true".  I'm not sure if there are languages where the
equivalent of "b = true; ++b" should yield "false".  In any case, I suspect
this is most easily done in the front end.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30274

Reply via email to