https://bugs.ruby-lang.org/https://bugs.ruby-lang.org/favicon.ico?17113305112018-10-04T07:27:58ZRuby Issue Tracking SystemRuby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=743002018-10-04T07:27:58Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul><li><strong>Is duplicate of</strong> <i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/14897">Bug #14897</a>: Unexpected behavior of `if` in specific code</i> added</li></ul> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=743022018-10-04T07:43:54Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul><li><strong>Is duplicate of</strong> deleted (<i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/14897">Bug #14897</a>: Unexpected behavior of `if` in specific code</i>)</li></ul> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=743042018-10-04T08:21:52Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul></ul><p>Seems fixed by a series of commits: 61846 61913 62615 62621 62622 62772 62777 62778 62787 62791 62796 62807 62856 63098 63099 63101 63102 63103 63113 63116 63117 63118 63119 63167 63368</p> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=743062018-10-04T13:53:56Zwanabe (_ wanabe)s.wanabe@gmail.com
<ul></ul><p>okwrtdsh (Tadashi Okawara) wrote:</p>
<blockquote>
<a name="This-throws-an-error"></a>
<h2 >This throws an error:<a href="#This-throws-an-error" class="wiki-anchor">¶</a></h2>
<pre><code>$ ruby -e 'RubyVM::InstructionSequence.compile("if false\nfoo bar: 1\nend").to_binary'
</code></pre>
</blockquote>
<p>It seems the same as <a href="https://bugs.ruby-lang.org/issues/14553#note-3" class="external">https://bugs.ruby-lang.org/issues/14553#note-3</a> = ruby-core:86400.</p>
<pre><code>$ ./miniruby -v -e 'RubyVM::InstructionSequence.compile("if false\nfoo bar: 1\nend").to_binary; p :done'
ruby 2.6.0dev (2018-03-30 trunk 63040) [x86_64-linux]
:done
$ git checkout HEAD~
Previous HEAD position was 484cc6b3bc compile.c: do not dump unused callinfos
HEAD is now at c493503625 * 2018-03-30
$ (make REVISION_FORCE=PHONY incs; make miniruby -j4) > /dev/null
$ ./miniruby -v -e 'RubyVM::InstructionSequence.compile("if false\nfoo bar: 1\nend").to_binary; p :done'
ruby 2.6.0dev (2018-03-30 trunk 63039) [x86_64-linux]
-e:1: [BUG] Segmentation fault at 0x0000000000000000
ruby 2.6.0dev (2018-03-30 trunk 63039) [x86_64-linux]
-- Control frame information -----------------------------------------------
(snip)
</code></pre> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=743612018-10-09T13:56:39Znagachika (Tomoyuki Chikanaga)nagachika00@gmail.com
<ul><li><strong>Backport</strong> changed from <i>2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN</i> to <i>2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: REQUIRED</i></li></ul><p>I don't think all of the changesets could be backported cleanly...<br>
Anyway I set the Backport field for remembrance.</p> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=767962019-02-14T00:29:40Zwanabe (_ wanabe)s.wanabe@gmail.com
<ul></ul><p>ruby_2_5 is fixed at r66130 that is the backport of r63040.</p>
<pre><code>$ ./miniruby -v -e 'RubyVM::InstructionSequence.compile("if false\nfoo bar: 1\nend").to_binary; p :done'
ruby 2.5.4p117 (2018-12-02 revision 66130) [x86_64-linux]
:done
$ git checkout HEAD~
Previous HEAD position was 0812ab5fec merge revision(s) 63040: [Backport #14553]
HEAD is now at 0fa65358e0 merge revision(s) 65365:
$ (make REVISION_FORCE=PHONY incs; make miniruby -j4) > /dev/null
$ ./miniruby -v -e 'RubyVM::InstructionSequence.compile("if false\nfoo bar: 1\nend").to_binary; p :done'
ruby 2.5.4p116 (2018-12-01 revision 66112) [x86_64-linux]
-e:1: [BUG] Segmentation fault at 0x0000000000000000
ruby 2.5.4p116 (2018-12-01 revision 66112) [x86_64-linux]
-- Control frame information -----------------------------------------------
(snip)
</code></pre> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=785952019-06-15T00:18:47Zjeremyevans0 (Jeremy Evans)merch-redmine@jeremyevans.net
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Closed</i></li></ul> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=810152019-08-26T13:46:38Zusa (Usaku NAKAMURA)usa@garbagecollect.jp
<ul><li><strong>Backport</strong> changed from <i>2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: REQUIRED</i> to <i>2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: DONE</i></li></ul> Ruby master - Bug #15200: RubyVM::InstructionSequence can not compile to binary from method call with hash in 'if false' expressionhttps://bugs.ruby-lang.org/issues/15200?journal_id=812192019-08-28T02:20:40Zjeremyevans0 (Jeremy Evans)merch-redmine@jeremyevans.net
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-5 priority-4 priority-default closed" href="/issues/15392">Bug #15392</a>: Crash in RubyVM::InstructionSequence#to_binary</i> added</li></ul>