From 510404f2def62918849797e742642254700e3608 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Thu, 22 Feb 2024 16:14:11 -0500 Subject: [PATCH] Stop using rb_fstring publicly rb_fstring is a private API, so we should use rb_str_to_interned_str instead, which is a public API. --- ext/-test-/string/fstring.c | 6 ++---- spec/ruby/optional/capi/ext/string_spec.c | 4 +--- string.c | 1 - 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/ext/-test-/string/fstring.c b/ext/-test-/string/fstring.c index 7ee14a8570f7d0..d3062224d88e81 100644 --- a/ext/-test-/string/fstring.c +++ b/ext/-test-/string/fstring.c @@ -2,12 +2,10 @@ #include "ruby/encoding.h" #include "internal/string.h" -VALUE rb_fstring(VALUE str); - VALUE bug_s_fstring(VALUE self, VALUE str) { - return rb_fstring(str); + return rb_str_to_interned_str(str); } VALUE @@ -15,7 +13,7 @@ bug_s_fstring_fake_str(VALUE self) { static const char literal[] = "abcdefghijklmnopqrstuvwxyz"; struct RString fake_str; - return rb_fstring(rb_setup_fake_str(&fake_str, literal, sizeof(literal) - 1, 0)); + return rb_str_to_interned_str(rb_setup_fake_str(&fake_str, literal, sizeof(literal) - 1, 0)); } VALUE diff --git a/spec/ruby/optional/capi/ext/string_spec.c b/spec/ruby/optional/capi/ext/string_spec.c index 2bd789fb72862a..c9c5277732ecbf 100644 --- a/spec/ruby/optional/capi/ext/string_spec.c +++ b/spec/ruby/optional/capi/ext/string_spec.c @@ -51,10 +51,8 @@ VALUE string_spec_rb_str_set_len_RSTRING_LEN(VALUE self, VALUE str, VALUE len) { return INT2FIX(RSTRING_LEN(str)); } -VALUE rb_fstring(VALUE str); /* internal.h, used in ripper */ - VALUE string_spec_rb_str_fstring(VALUE self, VALUE str) { - return rb_fstring(str); + return rb_str_to_interned_str(str); } VALUE string_spec_rb_str_buf_new(VALUE self, VALUE len, VALUE str) { diff --git a/string.c b/string.c index 24dd29b32e2528..8ed058eead8954 100644 --- a/string.c +++ b/string.c @@ -398,7 +398,6 @@ fstr_update_callback(st_data_t *key, st_data_t *value, st_data_t data, int exist } } -RUBY_FUNC_EXPORTED VALUE rb_fstring(VALUE str) {