summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkazu <kazu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-07-31 03:35:22 +0000
committerkazu <kazu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-07-31 03:35:22 +0000
commitd9d2bbe4b92120003cc026176a3841c875378e7c (patch)
tree926e662503880ee3b9ea1c5afe50e4967eb3102d
parent84d83482c8ba1b8e7002ed8ff4c6a2c00fa4ce62 (diff)
Improve error message
ref [Bug #13761] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--sprintf.c2
-rw-r--r--test/ruby/test_sprintf.rb4
2 files changed, 3 insertions, 3 deletions
diff --git a/sprintf.c b/sprintf.c
index 0d685ddbaf..52771eb52a 100644
--- a/sprintf.c
+++ b/sprintf.c
@@ -521,7 +521,7 @@ rb_str_format(int argc, const VALUE *argv, VALUE fmt)
for (t = p; t < end && *t != '%'; t++) ;
if (t + 1 == end) {
- rb_raise(rb_eArgError, "incomplete format specifier");
+ rb_raise(rb_eArgError, "incomplete format specifier; use %%%% (double %%) instead");
}
PUSH(p, t - p);
if (coderange != ENC_CODERANGE_BROKEN && scanned < blen) {
diff --git a/test/ruby/test_sprintf.rb b/test/ruby/test_sprintf.rb
index df004305ec..b46f5189e2 100644
--- a/test/ruby/test_sprintf.rb
+++ b/test/ruby/test_sprintf.rb
@@ -425,11 +425,11 @@ class TestSprintf < Test::Unit::TestCase
end
def test_percent_sign_at_end
- assert_raise_with_message(ArgumentError, "incomplete format specifier") do
+ assert_raise_with_message(ArgumentError, "incomplete format specifier; use %% (double %) instead") do
sprintf("%")
end
- assert_raise_with_message(ArgumentError, "incomplete format specifier") do
+ assert_raise_with_message(ArgumentError, "incomplete format specifier; use %% (double %) instead") do
sprintf("abc%")
end
end