From 8e6a06ca29b5a29621ca78f9c0b7ab39eef04cfa Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Mon, 30 Jun 2025 14:50:18 +0200 Subject: [PATCH] Name the field for string backing store * libguile/strings.h (chars): Name the field. * libguile/strings.c (string_stringbuf, string_aliased_string) (make_string, scm_i_string_ensure_mutable_x, scm_i_substring_shared) (scm_i_try_narrow_string, scm_i_string_set_x): Adapt. --- libguile/strings.c | 14 +++++++------- libguile/strings.h | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/libguile/strings.c b/libguile/strings.c index 0b55e9751..ef2dfef37 100644 --- a/libguile/strings.c +++ b/libguile/strings.c @@ -305,7 +305,7 @@ string_stringbuf (struct scm_string *str) { if (string_is_shared (str)) abort (); - return str->stringbuf; + return str->chars.stringbuf; } static inline struct scm_string * @@ -313,7 +313,7 @@ string_aliased_string (struct scm_string *str) { if (!string_is_shared (str)) abort (); - return str->string; + return str->chars.string; } static inline size_t @@ -337,7 +337,7 @@ make_string (struct scm_stringbuf *buf, int read_only_p, struct scm_string *str = scm_allocate_tagged (SCM_I_CURRENT_THREAD, sizeof (*str)); str->tag_and_flags = read_only_p ? scm_tc7_ro_string : scm_tc7_string; - str->stringbuf = buf; + str->chars.stringbuf = buf; str->start = start; str->length = length; return str; @@ -524,7 +524,7 @@ scm_i_string_ensure_mutable_x (struct scm_string *str) } stringbuf_set_mutable (buf); - str->stringbuf = buf; + str->chars.stringbuf = buf; } } @@ -551,7 +551,7 @@ scm_i_substring_shared (SCM str, size_t start, size_t end) struct scm_string *ret = scm_allocate_tagged (SCM_I_CURRENT_THREAD, sizeof (struct scm_string)); ret->tag_and_flags = mutation_sharing_string_tag; - ret->string = s; + ret->chars.string = s; ret->start = start; ret->length = len; return scm_from_string (ret); @@ -635,7 +635,7 @@ scm_i_try_narrow_string (SCM str) try_narrow_stringbuf (as_wide_stringbuf (buf), 0, buf->length); if (narrowed) { - s->stringbuf = &narrowed->header; + s->chars.stringbuf = &narrowed->header; return 1; } @@ -815,7 +815,7 @@ scm_i_string_set_x (SCM str, size_t p, scm_t_wchar chr) { struct scm_wide_stringbuf *wide = widen_stringbuf (as_narrow_stringbuf (buf)); - s->stringbuf = &wide->header; + s->chars.stringbuf = &wide->header; wide_stringbuf_chars (wide)[idx] = chr; } else diff --git a/libguile/strings.h b/libguile/strings.h index 66399e191..ee2c5b0f9 100644 --- a/libguile/strings.h +++ b/libguile/strings.h @@ -202,7 +202,7 @@ struct scm_string struct scm_stringbuf *stringbuf; /* Sometimes though it aliases another string. */ struct scm_string *string; - }; + } chars; size_t start; size_t length; };