* [bug#0002] swapにまつわるバグ
 -(by [[K]], 2018.12.14)
 ** (0)
 -どんなバグが出て、それをどうやって解決したかをメモしておけば、きっと何かの役に立つ日が来るかもしれない。
 -ということでこのシリーズをやっている。
 ** (1)
 -以下のようなシンプルなマクロがある
  #define SWPINT(ia, ib)	it = ia; ia = ib; ib = it
 -これを何としたことか以下のように書き間違えていた。
  #define SWPINT(ia, ib)	it = ia; ib = ia; ib = it
 
 -どうも挙動が明らかにおかしいと思って、おかしくなったのはどこなのかと巻き戻してみたら、SWPINTがおかしいところまでは突き止めた。しかしそれでもすぐには気づけない。20分くらい悩んでやっとわかった。・・・こんなに簡単なミスなのに!
 
 ** (2)
 -今回の教訓。
 -まあ内容の割に時間がかかっただけで、そんなにひどく手こずったわけじゃない。
 -でもなあ、なんかコンパイラがここは怪しいぞとか教えてくれないかなあ。無理かなあ。
 -というかスワップ演算子くらいは言語がデフォルトで用意してくれてもよさそうなものだよなあ・・・使用頻度高そうだし。
 
 * こめんと欄
 #comment

リロード   新規 編集 差分 添付   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS