問題のコードから症状が出るままどんどん削ってって最小単位がそのコード?

https://ideone.com/xcDRkc

実は右辺がcharの変数で 中身が 0x80 なんだけど
符号拡張の過程で char を unsigned char として 0x0080 と拡張したり
(処理系依存だっけか?  リテラルだけだっけ?)
そういう話ではない?