Bug 38516

Summary: Binary operator ^= doesn't work well for class members
Product: gcc Reporter: Felipe Calliari Ribas <calliari>
Component: c++Assignee: Not yet assigned to anyone <unassigned>
Status: RESOLVED DUPLICATE    
Severity: major CC: alduc1, alexey, algorithmus, asokumar, astier, av1474, bala, barnarr, behloul.younes, bmead15, buergel, calliari, carpman, chuchunxin, devnull, d_picco, eric.mcvicker, fuchsia.groan, gaurav_har, gcc-bugs, gcc, ggs, gjasny, j.witteveen, jandres, janis, jesser, jompo, krs, lid, lindahlb, lxg8906, mayer, mikaldaz, mike.clarkson, nakkore, nanericwang, nobs, pierre.van.de.laar_at_philips.com, qyang, ramiller, raoulgough, raphael.ribas, rglan, rjvbertin, robc, s9322036, SimonX200, smartmouse714, super.aorta, svetozarmarkov, tczarnecki, terrix, tim.bruylants, vanveghel, vitaly, windows2000d, zshao
Priority: P3    
Version: 4.2.4   
Target Milestone: ---   
Host: Target:
Build: Known to work: 3.3.6
Known to fail: Last reconfirmed:

Description Felipe Calliari Ribas 2008-12-13 14:53:01 UTC
*** working on gcc version 3.3.6 

A swap operation between two integers doesn't works for class members.

i ^= j ^= i ^= j;

after the operation above, "i" will value 0 (zero), if i and j are class members.
Comment 1 Andreas Schwab 2008-12-13 18:26:07 UTC

*** This bug has been marked as a duplicate of 11751 ***