Actions
Bug #20747
closed[prism] regression in retry precedence
    Bug #20747:
    [prism] regression in retry precedence
  
ruby -v:
ruby 3.4.0dev (2024-09-15T01:06:11Z master 532af89e3b) +PRISM [arm64-darwin23]
Description
Since prism has been made the default, our test suite now fail to boot with the following error:
syntax error found (SyntaxError)
  298 |           raise e
  299 |         else
> 300 |           retry
      |           ^~~~~ Invalid retry after else
  301 |         end
  302 |       end
Here's the code in question, that reproduce the error:
def retry_thing(times: 1)
  retries ||= 0
  begin
    yield
  rescue RuntimeError => e
    raise if (retries += 1) > times
    begin
      refresh!
    rescue
      raise e
    else
      retry
    end
  end
end
  
Actions