From 4a46362239ca151be428f1db799c491f09d7403b Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 28 Mar 2014 10:32:36 +0000 Subject: [PATCH] struct.c: encoding of member name * struct.c (not_a_member): preserve encoding of member name in error messages. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- struct.c | 2 +- test/-ext-/struct/test_member.rb | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/struct.c b/struct.c index 75f9add471..9d89134392 100644 --- a/struct.c +++ b/struct.c @@ -84,7 +84,7 @@ NORETURN(static void not_a_member(ID id)); static void not_a_member(ID id) { - rb_name_error(id, "`%s' is not a struct member", rb_id2name(id)); + rb_name_error(id, "`%"PRIsVALUE"' is not a struct member", QUOTE_ID(id)); } VALUE diff --git a/test/-ext-/struct/test_member.rb b/test/-ext-/struct/test_member.rb index 002941c95d..89767bfeb4 100644 --- a/test/-ext-/struct/test_member.rb +++ b/test/-ext-/struct/test_member.rb @@ -8,5 +8,6 @@ class Bug::Struct::Test_Member < Test::Unit::TestCase s = S.new(1) assert_equal(1, s.get(:a)) assert_raise_with_message(NameError, /is not a struct member/) {s.get(:b)} + assert_raise_with_message(NameError, /\u{3042}/) {s.get(:"\u{3042}")} end end