From: "nobu (Nobuyoshi Nakada)" Date: 2013-06-13T15:55:50+09:00 Subject: [ruby-dev:47421] [ruby-trunk - Bug #8513][Closed] assertion failed in rb_ary_modify Issue #8513 has been updated by nobu (Nobuyoshi Nakada). Status changed from Assigned to Closed Backport changed from 1.9.3: UNKNOWN, 2.0.0: UNKNOWN to 1.9.3: REQUIRED, 2.0.0: REQUIRED r41245で直ったと思います。 ---------------------------------------- Bug #8513: assertion failed in rb_ary_modify https://bugs.ruby-lang.org/issues/8513#change-39902 Author: znz (Kazuhiro NISHIYAMA) Status: Closed Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: core Target version: current: 2.1.0 ruby -v: ruby 2.1.0dev (2013-06-11 trunk 41229) [x86_64-linux] Backport: 1.9.3: REQUIRED, 2.0.0: REQUIRED -DARRAY_DEBUG をつけていると rdoc の生成中に array.c:282 で assertion failed になります。 else if (ARY_SHARED_NUM(shared) == 1 && len > (RARRAY_LEN(shared)>>1)) { long shift = RARRAY_PTR(ary) - RARRAY_PTR(shared); ARY_SET_PTR(ary, RARRAY_PTR(shared)); ARY_SET_CAPA(ary, RARRAY_LEN(shared)); の ARY_SET_CAPA が assertion failed になっている 282 行目で、ARY_SET_PTR は通っているので、共通している assert(!ARY_EMBED_P(ary)); assert(!OBJ_FROZEN(ary)); は問題なくて assert(!ARY_SHARED_P(ary)); でひっかかっているようです。 -- http://bugs.ruby-lang.org/