From: "naruse (Yui NARUSE)" Date: 2013-08-07T02:53:24+09:00 Subject: [ruby-dev:47026] [ruby-trunk - Bug #8739] Range#last と#last(n)で挙動の統一がされていない Issue #8739 has been updated by naruse (Yui NARUSE). なんかrubyspecのこけ方がおかしいと思ったのでよく見てみたら、rubyspec自体(=mspec)が Range#last を ruby_version_is "1.9"..."1.9.3" とかの判定で使っているようで、 見事に踏んだようです。 http://c64b.rubyci.org/~chkbuild/ruby-trunk/log/20130806T090301Z.diff.html.gz 最低でも移行措置必要じゃないですかねぇ。 ---------------------------------------- Bug #8739: Range#last と#last(n)で挙動の統一がされていない https://bugs.ruby-lang.org/issues/8739#change-40942 Author: to_ueda (Tomoya Ueda) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: Target version: current: 2.1.0 ruby -v: ruby 2.1.0dev (2013-08-05) [x86_64-linux] Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN Range#lastは終端を返しますが、#last(n)は最後の要素を返します。 引数の有無で挙動が異なるのは意図したものでしょうか? 意図したものであれば、返す値を終端か要素どちらかに挙動を統一出来ないでしょうか。 #終端が返る (1...5).last => 5 #最後の要素が返る (1...5).last(1) => [4] -- http://bugs.ruby-lang.org/ _______________________________________________ ruby-dev mailing list ruby-dev@ruby-lang.org http://lists.ruby-lang.org/cgi-bin/mailman/listinfo/ruby-dev