From: shevegen@... Date: 2017-08-12T03:58:47+00:00 Subject: [ruby-core:82356] [Ruby trunk Bug#13802] break inside loop is not working as expected Issue #13802 has been updated by shevegen (Robert A. Heiler). Yes, works as the code specifies, not a bug, so misfiled. I anyone wants to test via copy/paste into IRB, here is a slightly reformatted variant: y = 1 loop do y += 1 next unless y % 2==0 puts y break if y > 10 end ---------------------------------------- Bug #13802: break inside loop is not working as expected https://bugs.ruby-lang.org/issues/13802#change-66149 * Author: lingarajg (Lingaraj Gowdar) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu] * Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- Reproduce process: 1. Create a file (.rb) 2. Add the below code 3. Run with syntax - ruby .rb your ruby version (ruby -v): ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu] reproducible ruby script: y=1 loop do y += 1 next unless y%2==0 puts y break if y > 10 end Result of reproduce process: 2 4 6 8 10 12 [Finished in 0.0s] Expected result and the reason why you expect: 2 4 6 8 10 [Finished in 0.0s] Reason is when the condition "y > 10" is met, the code should exit from there, tested with both "break" and "exit". result is same. ---Files-------------------------------- bug.rb (69 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: