Project

General

Profile

Actions

Bug #19263

closed

MJIT fails to compile multiple values in a single case in Ruby 3.2.0

Added by k0kubun (Takashi Kokubun) over 1 year ago. Updated over 1 year ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:111438]

Description

$ cat test.rb
def test(a)
  case a
  when true, false
    a
  end
end

test(true)
test(true)

$ ruby --mjit-verbose=1 --mjit-wait --mjit-call-threshold=2 test.rb
/tmp/_ruby_mjit_p237606u1.c: In function ‘_mjit0’:
/tmp/_ruby_mjit_p237606u1.c:58:7: error: duplicate case value
   58 |       case 19:
      |       ^~~~
compilation terminated due to -Wfatal-errors.
Successful MJIT finish

I'd like to backport this fix https://github.com/ruby/ruby/commit/fc03ba50f1ff6c30f7c654f564b4dffbed0844ef to (only) ruby_3_2 branch.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0