[ruby-list:50784] Re: [質問] a=a があると動作が異常
From:
nekomura <mimomakun@...>
Date:
2019-06-07 03:12:58 UTC
List:
ruby-list #50784
小村です。 早速の調査ありがとうございます。 > もし可能なら ruby の redimen の issue にこの件を登録していただけますか? すみません。どしろうとなのでどうやっていいのかわかりません。 登録していただけないでしょうか? > On 2019,6,7, at 11:35, Tomoyuki Chikanaga <nagachika00@gmail.com> wrote: > > 確かに 2.5.3以降 と 2.6.x で再現しますね。 > > ruby --dump=parsetree の結果は発生前後であまり変化はないですが --dump=insns すると VM 命令列が抜けているようでした。 > peephole 最適化の不具合だろうと思って探してみたところ r63870 から発生してそうです。 > > https://github.com/ruby/ruby/commit/5e7167f8fb954ec46eb12a4a0a1191a8f7d9543d > > とり急ぎ報告まで。 > > もし可能なら ruby の redimen の issue にこの件を登録していただけますか? > > https://bugs.ruby-lang.org/projects/ruby-trunk/issues/new > > > 2019年6月7日(金) 10:20 nekomura <mimomakun@gmail.com>: > 小村と申します。 > どこで聞いていいのかわからないのでここで質問させてください。 > > 下記スクリプトの結果が期待と違います。なぜでしょうか? > a = a は不要ですが、なにもしないことを明示するために書いたものです。 > なおOS付属の ruby 2.3.7p456 では期待通りの結果でした。 > > > a = "aaa" > if a == "bbb" || a == "ccc" then > a = a > else > puts "OK" > end > puts "END" > > > > 実行結果 > END > > 期待する結果 > OK > END > > 動作環境 > MacOS 10.13.6 > ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17] > macportsでインストール >