aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--sample/test.rb5
-rw-r--r--test/ruby/test_system.rb5
3 files changed, 13 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index e60cdbee51..f315b4b127 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Aug 18 12:24:30 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
+ comment lines first.
+
Sat Aug 18 11:44:59 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_set_arguments), insnhelper.ci
diff --git a/sample/test.rb b/sample/test.rb
index 768429d951..11d5555401 100644
--- a/sample/test.rb
+++ b/sample/test.rb
@@ -1879,7 +1879,10 @@ end
def valid_syntax?(code, fname)
p fname
- eval("BEGIN {return true}\n#{code}", nil, fname, 0)
+ code = code.sub(/\A(?:\s*\#.*$)*(\n)?/n) {
+ "#$&#{"\n" if $1 && !$2}BEGIN{return true}\n"
+ }
+ eval(code, nil, fname, 0)
rescue Exception
STDERR.puts $!.message
false
diff --git a/test/ruby/test_system.rb b/test/ruby/test_system.rb
index 4cd93738f9..d70d6f8ca4 100644
--- a/test/ruby/test_system.rb
+++ b/test/ruby/test_system.rb
@@ -3,7 +3,10 @@ require 'envutil'
class TestSystem < Test::Unit::TestCase
def valid_syntax?(code, fname)
- eval("BEGIN {return true}\n#{code}", nil, fname, 0)
+ code = code.sub(/\A(?:\s*\#.*$)*(\n)?/n) {
+ "#$&#{"\n" if $1 && !$2}BEGIN{return true}\n"
+ }
+ eval(code, nil, fname, 0)
end
def test_system