[#113107] [Ruby master Bug#19576] Backport request: Gemfile.lock resolving is broken with bundler shipped with Ruby 3.1.4 — "jprokop (Jarek Prokop) via ruby-core" <ruby-core@...>

Issue #19576 has been reported by jprokop (Jarek Prokop).

8 messages 2023/04/04

[#113112] [Ruby master Bug#19578] abort() shows stack trace when run within rescue clause — "Dan0042 (Daniel DeLorme) via ruby-core" <ruby-core@...>

Issue #19578 has been reported by Dan0042 (Daniel DeLorme).

8 messages 2023/04/04

[#113180] [Ruby master Feature#19588] Allow Comparable#clamp(min, max) to accept nil as a specification — "kyanagi (Kouhei Yanagita) via ruby-core" <ruby-core@...>

Issue #19588 has been reported by kyanagi (Kouhei Yanagita).

7 messages 2023/04/11

[#113209] [Ruby master Bug#19596] Decreased performance after upgrading from ruby 2.7.2 to ruby 3.2.2 — silva96 via ruby-core <ruby-core@...>

Issue #19596 has been reported by silva96 (Benjam=EDn Silva).

7 messages 2023/04/13

[#113238] [Ruby master Misc#19599] DevMeeting-2023-05-10 — "mame (Yusuke Endoh) via ruby-core" <ruby-core@...>

Issue #19599 has been reported by mame (Yusuke Endoh).

14 messages 2023/04/14

[#113285] [Ruby master Bug#19607] Introduce `Hash#symbolize_keys`. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>

Issue #19607 has been reported by ioquatix (Samuel Williams).

8 messages 2023/04/18

[#113303] [Ruby master Feature#19610] GC.delay_promotion — "peterzhu2118 (Peter Zhu) via ruby-core" <ruby-core@...>

Issue #19610 has been reported by peterzhu2118 (Peter Zhu).

9 messages 2023/04/20

[#113313] [Ruby master Bug#19613] Add version information to all function documentation — "fulldecent (William Entriken) via ruby-core" <ruby-core@...>

Issue #19613 has been reported by fulldecent (William Entriken).

7 messages 2023/04/23

[#113342] [Ruby master Feature#19617] Add Method#binding and UnboundMethod#binding, similar to Proc#binding — "nevans (Nicholas Evans) via ruby-core" <ruby-core@...>

Issue #19617 has been reported by nevans (Nicholas Evans).

9 messages 2023/04/25

[#113381] [Ruby master Bug#19624] Backticks - IO object leakage — pineman via ruby-core <ruby-core@...>

Issue #19624 has been reported by pineman (Jo=E3o Pinheiro).

10 messages 2023/04/30

[ruby-core:113345] [Ruby master Bug#19611] Ruby hangs up with `while true && true`

From: "kjtsanaktsidis (KJ Tsanaktsidis) via ruby-core" <ruby-core@...>
Date: 2023-04-26 07:26:10 UTC
List: ruby-core #113345
Issue #19611 has been updated by kjtsanaktsidis (KJ Tsanaktsidis).


Hm, interesting - it falls into an infinite loop in `iseq_peephole_optimize`, because it's doing useless jump elimination on labels that recursively point to each other.

At the beginning of `iseq_peephole_optimize`, the instruction sequence of your `hoge` method looks like this:

```
-- raw disasm--------
  0000 jump                 <L000>                                      (   2)
<L004> [sp: -1]
  0002 putnil                                                           (   2)
<L005> [sp: -1]
  0003 pop                                                              (   2)
  0004 jump                 <L000>                                      (   2)
<L001> [sp: -1]
<L000> [sp: -1]
  0006 jump                 <L006>                                      (   2)
<L006> [sp: -1]
  0008 jump                 <L001>                                      (   2)
<L003> [sp: -1]
  adjust: [label: 4]
  0010 putnil                                                           (   2)
<L002> [sp: -1]
  trace: 10
  0011 leave                                                            (   4)
---------------------
```

Looks like the peephole optimizer is continuously changing that first jump to point to L006, then L001, then L006 again, forever.

This PR should fix it I think: https://github.com/ruby/ruby/pull/7760

----------------------------------------
Bug #19611: Ruby hangs up with `while true && true`
https://bugs.ruby-lang.org/issues/19611#change-102905

* Author: tompng (tomoya ishida)
* Status: Open
* Priority: Normal
* ruby -v: ruby 3.2.0 (2022-12-25 revision a528908271) +YJIT [x86_64-darwin20]
* Backport: 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN
----------------------------------------
Fails to run this code. It hangs up. Ctrl+C does not work.
~~~ruby
def hoge
  while true && true
  end
end
~~~

Compiling `while true && true; end` will also hangs up
~~~ruby
irb(main):001:0> RubyVM::InstructionSequence.compile 'while true && true; end'; puts :done
(no response)
~~~



-- 
https://bugs.ruby-lang.org/
 ______________________________________________
 ruby-core mailing list -- ruby-core@ml.ruby-lang.org
 To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
 ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/

In This Thread