Bug #3534: "Branch condition evaluates to a garbage value" in function `swallow' of io.c
http://redmine.ruby-lang.org/issues/show/3534

起票者: Yusuke Endoh
ステータス: Open, 優先度: Low
担当者: Usaku NAKAMURA
ruby -v: ruby 1.9.3dev (2010-06-29 trunk 28465) [i686-linux]

遠藤です。

Clang  Static Analyzer を使ってみたら、io.c の swallow 関数が
ローカル変数 i を初期化せずに条件文その他に使っていることを
見つけてくれました。

 2291                 int i;
 2292                 if (needconv) {
 2293                     if (*p != term) return TRUE;
 2294                     while (--i && *++p == term);
 2295                 }

usa さんが書いたコードのようなので usa さんを担当者にしておき
ます。

ちなみに concov によると、テストでこの if の then 節は一度も
実行されていないようです。

-- 
Yusuke Endoh <mame / tsg.ne.jp>


----------------------------------------
http://redmine.ruby-lang.org