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