[#30220] schedule for Ruby 1.8.6 — "Akinori MUSHA" <knu@...>

 ruby-core を読んでいない人もいると思うので、ここでもアナウンス

20 messages 2007/01/30

[ruby-dev:30131] RubyLex fails to read "#{Time.now.strftime("%m/%d")}"

From: Masao Mutoh <mutoh@...>
Date: 2007-01-13 16:11:32 UTC
List: ruby-dev #30131
むとうです。

RubyLexを使わさせていただいているのですが
"#{Time.now.strftime("%m/%d")}"
という形式の文字列がある場合、シンタックスエラーになります。

以下のようにすると再現します。

% ruby -rirb/ruby-lex -e 'RubyLex.new.lex'
"#{Time.now.strftime("%m/%d")}"
/usr/lib/ruby/1.8/irb/ruby-lex.rb:938:in `identify_quotation': unknown type of %string (RubyLex::SyntaxError)
        from /usr/lib/ruby/1.8/irb/ruby-lex.rb:694:in `lex_int2'
        from /usr/lib/ruby/1.8/irb/slex.rb:237:in `call'
        from /usr/lib/ruby/1.8/irb/slex.rb:237:in `match_io'
        from /usr/lib/ruby/1.8/irb/slex.rb:222:in `match_io'
        from /usr/lib/ruby/1.8/irb/slex.rb:76:in `match'
        from /usr/lib/ruby/1.8/irb/ruby-lex.rb:287:in `token'
        from /usr/lib/ruby/1.8/irb/ruby-lex.rb:263:in `lex'
        from -e:1
% ruby -v
ruby 1.8.5 (2006-12-04 patchlevel 2) [x86_64-linux]

Rubyの文法としてエラーにはなりませんので
ここでSyntaxErrorになるのは問題なような気がします。

In This Thread

Prev Next