Restructure a little - no semantic change. This converts if (cond) { a = b = x; } else { c = x; b = x; } into if (cond) { a = x; } else { c = x; } b = x;