[ruby-core:94767] [Ruby master Bug#16139] setinstancevariable on MJIT may not check frozen flag

From: takashikkbn@...
Date: 2019-09-04 01:41:01 UTC
List: ruby-core #94767
Issue #16139 has been reported by k0kubun (Takashi Kokubun).

----------------------------------------
Bug #16139: setinstancevariable on MJIT may not check frozen flag
https://bugs.ruby-lang.org/issues/16139

* Author: k0kubun (Takashi Kokubun)
* Status: Open
* Priority: Normal
* Assignee: k0kubun (Takashi Kokubun)
* Target version: 
* ruby -v: ruby 2.7.0dev (2019-09-03T12:12:31Z master beaabd2308) [x86_64-linux]
* Backport: 2.5: DONTNEED, 2.6: REQUIRED
----------------------------------------
```
class A
  def a
    @a = 1
  end
end

a = A.new
a.a
a.a
a.a
a.freeze
a.a
```

## without JIT
```
$ ruby --disable-gems a.rb
Traceback (most recent call last):
        1: from a.rb:12:in `<main>'
a.rb:3:in `a': can't modify frozen A: #<A:0x00005601af0b0430 @a=1> (FrozenError)
```

## with JIT
```
$ ruby --disable-gems --jit-min-calls=3 --jit-wait a.rb
```
(no error)



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next