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

ruby-changes:1755

From: ko1@a...
Date: 25 Aug 2007 00:19:15 +0900
Subject: [ruby-changes:1755] ko1 - Ruby:r13246 (trunk): * compile.c (compile_massign_opt): fix to skip massign optimization

ko1	2007-08-25 00:19:00 +0900 (Sat, 25 Aug 2007)

  New Revision: 13246

  Modified files:
    trunk/ChangeLog
    trunk/bootstraptest/test_massign.rb
    trunk/compile.c
    trunk/version.h

  Log:
    * compile.c (compile_massign_opt): fix to skip massign optimization
      with global variables.
    * bootstraptest/test_massign.rb: add some tests for above.
    


  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/version.h?r1=13246&r2=13245
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/compile.c?r1=13246&r2=13245
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=13246&r2=13245
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/bootstraptest/test_massign.rb?r1=13246&r2=13245

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 13245)
+++ ChangeLog	(revision 13246)
@@ -1,3 +1,10 @@
+Sat Aug 25 00:08:43 2007  Koichi Sasada  <ko1@a...>
+
+	* compile.c (compile_massign_opt): fix to skip massign optimization
+	  with global variables.
+
+	* bootstraptest/test_massign.rb: add some tests for above.
+
 Fri Aug 24 18:42:03 2007  Yukihiro Matsumoto  <matz@r...>
 
 	* test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
Index: bootstraptest/test_massign.rb
===================================================================
--- bootstraptest/test_massign.rb	(revision 13245)
+++ bootstraptest/test_massign.rb	(revision 13246)
@@ -4,6 +4,14 @@
 assert_equal '[]',          '*a = *nil; a'
 assert_equal '[nil]',       '*a = nil; a'
 assert_equal '2',           'a, a = 1, 2; a', "[ruby-dev:31522]"
+assert_equal '[1, 2]',      'a, b = 1, 2'
+assert_equal '[1, 2]', %q{
+  ans = []
+  trace_var(:$a){|v| ans << v}
+  trace_var(:$b){|v| ans << v}
+  $a, $b = 1, 2
+  ans
+}
 
 =begin
 # generated by this script:
Index: compile.c
===================================================================
--- compile.c	(revision 13245)
+++ compile.c	(revision 13246)
@@ -2032,9 +2032,6 @@
 	  case NODE_CVASGN:
 	    MEMORY(ln->nd_vid);
 	    break;
-	  case NODE_GASGN:
-	    MEMORY((VALUE)ln->nd_entry);
-	    break;
 	  default:
 	    return 0;
 	}
Index: version.h
===================================================================
--- version.h	(revision 13245)
+++ version.h	(revision 13246)
@@ -1,7 +1,7 @@
 #define RUBY_VERSION "1.9.0"
-#define RUBY_RELEASE_DATE "2007-08-24"
+#define RUBY_RELEASE_DATE "2007-08-25"
 #define RUBY_VERSION_CODE 190
-#define RUBY_RELEASE_CODE 20070824
+#define RUBY_RELEASE_CODE 20070825
 #define RUBY_PATCHLEVEL 0
 
 #define RUBY_VERSION_MAJOR 1
@@ -9,7 +9,7 @@
 #define RUBY_VERSION_TEENY 0
 #define RUBY_RELEASE_YEAR 2007
 #define RUBY_RELEASE_MONTH 8
-#define RUBY_RELEASE_DAY 24
+#define RUBY_RELEASE_DAY 25
 
 #ifdef RUBY_EXTERN
 RUBY_EXTERN const char ruby_version[];

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

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