summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--re.c2
-rw-r--r--test/ruby/test_system.rb1
3 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 4a8a9f79c2..66eefad252 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Fri Dec 21 14:01:14 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * test/ruby/test_system.rb (TestSystem::valid_syntax): apply
+ ASCII-8BIT encoding explicitly.
+
+ * re.c (rb_reg_prepare_re): add encoding name in the message.
+
Fri Dec 21 13:54:05 2007 Tanaka Akira <akr@fsij.org>
* re.c: change "character encodings differ" error messages.
diff --git a/re.c b/re.c
index b6facf98ea..9306ae7bfd 100644
--- a/re.c
+++ b/re.c
@@ -943,7 +943,7 @@ rb_reg_prepare_re(VALUE re, VALUE str)
if (rb_reg_fixed_encoding_p(re)) {
if (ENCODING_GET(re) != rb_enc_get_index(str) &&
rb_enc_str_coderange(str) != ENC_CODERANGE_7BIT) {
- rb_raise(rb_eArgError, "fixed character encoding regexp with incompatible string");
+ rb_raise(rb_eArgError, "fixed character encoding regexp with incompatible string (encoding: %s)", rb_enc_name(rb_enc_get(str)));
}
}
else if ((enc = rb_enc_get(str)) != 0 &&
diff --git a/test/ruby/test_system.rb b/test/ruby/test_system.rb
index 7524b2e7af..403bacab2d 100644
--- a/test/ruby/test_system.rb
+++ b/test/ruby/test_system.rb
@@ -4,6 +4,7 @@ require 'tmpdir'
class TestSystem < Test::Unit::TestCase
def valid_syntax?(code, fname)
+ code.force_encoding("ascii-8bit")
code = code.sub(/\A(?:\s*\#.*$)*(\n)?/n) {
"#$&#{"\n" if $1 && !$2}BEGIN{return true}\n"
}