Project

General

Profile

Actions

Bug #10437

closed

ruby -c and ripper inconsistency: /*/

Added by akr (Akira Tanaka) over 7 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.0dev (2014-10-27 trunk 48168) [x86_64-linux]
[ruby-dev:48714]

Description

/*/ という、間違った regexp リテラルは
ruby -c ではちゃんとエラーになるのですが、
Ripper.sexp ではエラーになりません。

% cat z.rb
/*/
% ruby -c z.rb                                        
z.rb:1: target of repeat operator is not specified: /*/
% ruby -rripper -e 'p Ripper.sexp(STDIN.read)'  < z.rb
[:program, [[:regexp_literal, [[:@tstring_content, "*", [1, 1]]], [:@regexp_end, "/", [1, 2]]]]]
% ruby -v
ruby 2.2.0dev (2014-10-27 trunk 48168) [x86_64-linux]

Ripper では regexp object を作らないからでしょうが、
syntax error を調べる目的に対して不都合ではあります。


Related issues 1 (0 open1 closed)

Related to Ruby master - Bug #10543: ruby -c and ripper inconsistency: /(?<n>a(b|\g<n>))/Closed11/25/2014Actions
Actions

Also available in: Atom PDF