[前][次][番号順一覧][スレッド一覧]

ruby-changes:15593

From: nobu <ko1@a...>
Date: Mon, 26 Apr 2010 13:12:17 +0900 (JST)
Subject: [ruby-changes:15593] Ruby:r27499 (trunk): * parse.y (ripper_get_value): escape Qundef.

nobu	2010-04-26 13:11:59 +0900 (Mon, 26 Apr 2010)

  New Revision: 27499

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=27499

  Log:
    * parse.y (ripper_get_value): escape Qundef.

  Modified files:
    trunk/ChangeLog
    trunk/parse.y
    trunk/test/ripper/test_parser_events.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 27498)
+++ ChangeLog	(revision 27499)
@@ -1,3 +1,7 @@
+Mon Apr 26 13:11:57 2010  Nobuyoshi Nakada  <nobu@r...>
+
+	* parse.y (ripper_get_value): escape Qundef.
+
 Mon Apr 26 12:42:43 2010  Nobuyoshi Nakada  <nobu@r...>
 
 	* parse.y (warn_balanced): warn according to last state.
Index: parse.y
===================================================================
--- parse.y	(revision 27498)
+++ parse.y	(revision 27499)
@@ -10351,6 +10351,7 @@
 ripper_get_value(VALUE v)
 {
     NODE *nd;
+    if (v == Qundef) return Qnil;
     if (!RB_TYPE_P(v, T_NODE)) return v;
     nd = (NODE *)v;
     if (nd_type(nd) != NODE_LASGN) return Qnil;
Index: test/ripper/test_parser_events.rb
===================================================================
--- test/ripper/test_parser_events.rb	(revision 27498)
+++ test/ripper/test_parser_events.rb	(revision 27499)
@@ -463,6 +463,7 @@
       thru_def = true
     }
     assert_equal true, thru_def
+    assert_equal '[def(foo,[],bodystmt([void()]))]', parse('def foo ;end')
   end
 
   def test_defined
@@ -1102,10 +1103,8 @@
   end
 
   def test_unterminated_regexp
-    assert_normal_exit(<<"SRC")
-$:.unshift(File.dirname(#{File.expand_path(__FILE__).dump}))
-require 'dummyparser'
-DummyParser.new('/').parse.to_s
-SRC
+    compile_error = false
+    parse('/', :compile_error) {|msg| compile_error = msg}
+    assert_equal("unterminated regexp meets end of file", compile_error)
   end
 end if ripper_test

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]