From: nobu@... Date: 2014-11-30T11:06:14+00:00 Subject: [ruby-dev:48757] [ruby-trunk - Bug #10543] [Closed] ruby -c and ripper inconsistency: /(?a(b|\g))/ Issue #10543 has been updated by Nobuyoshi Nakada. Status changed from Open to Closed % Done changed from 0 to 100 Applied in changeset r48655. ---------- parse.y: fix a typo * parse.y (regexp_contents): fix a typo. pointed out by wanabe. [ruby-dev:48741] [Bug #10543] ---------------------------------------- Bug #10543: ruby -c and ripper inconsistency: /(?a(b|\g))/ https://bugs.ruby-lang.org/issues/10543#change-50204 * Author: Akira Tanaka * Status: Closed * Priority: Normal * Assignee: * Category: * Target version: * ruby -v: ruby 2.2.0dev (2014-11-26 trunk 48577) [x86_64-linux] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- 以下のように、/(?a(b|\g))/ というだけのソースは ruby -c では問題無しとなりますが、 Ripper.sexp では構文木でなく nil が返ってきてしまいます。 ``` % cat z.rb /(?a(b|\g))/ % ./ruby -c z.rb Syntax OK % ./ruby -rripper -e 'p Ripper.sexp(STDIN.read)' < z.rb nil % ./ruby -v ruby 2.2.0dev (2014-11-26 trunk 48577) [x86_64-linux] ``` -- https://bugs.ruby-lang.org/