Issue #15536 has been reported by decuplet (Nikita Shilnikov).

----------------------------------------
Bug #15536: Crash on merging specific hashes using keyword splat
https://bugs.ruby-lang.org/issues/15536

* Author: decuplet (Nikita Shilnikov)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux]
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
Here's a snippet that leads to a crash on ruby 2.5.3. I tried to make it as small as possible.
```ruby
1000.times do
  {
    **{
      a1: nil,
      a2: nil,
      a3: nil,
      a4: nil,
      a5: nil,
      a6: nil,
      a7: nil,
      a8: nil,
      a9: nil
    },
    b1: nil,
    b2: nil,
    a4: nil,
    **{ c1: nil, c2: nil },
    a7: nil,
    a8: nil,
    a9: nil,
  }
end
```

Results in `*** Error in irb': malloc(): memory corruption: 0x000055ca6c832bd0 ***` (more detail in the attached file).

We came across this on ruby 2.5.3 and as far as I can tell it's no longer a problem on 2.6 but we yet to upgrade.

---Files--------------------------------
segfault.txt (30.8 KB)


-- 
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>