<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/include/ruby/internal/core/rstring.h, branch v3_4_9</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) 9d44cb0b2b5520b2b299851003ca2a97bf1e2079, 367ddd445cdf5ccc55a0481c944746ef595f72f7, 48dce7874fcb571765635b32fa6a3e3a12e228f8: [Backport #21655]</title>
<updated>2025-12-08T22:36:06+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-12-08T22:36:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=da66b64a18414d5ece52512eb016c1af2ede1730'/>
<id>da66b64a18414d5ece52512eb016c1af2ede1730</id>
<content type='text'>
	[PATCH] Remove rbimpl_rstring_getmem() usage as workaround for GCC 15.2.1 optimization bug. [Bug #21655]

	[PATCH] include/ruby/internal/core/rstring.h: Remove rbimpl_rstring_getmem() definition.

	[PATCH] simplify RSRING_GETMEM() definition.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	[PATCH] Remove rbimpl_rstring_getmem() usage as workaround for GCC 15.2.1 optimization bug. [Bug #21655]

	[PATCH] include/ruby/internal/core/rstring.h: Remove rbimpl_rstring_getmem() definition.

	[PATCH] simplify RSRING_GETMEM() definition.
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 2bb6fe3854e2a4854bb89bfce4eaaea9d848fd1b: [Backport #21629]</title>
<updated>2025-10-08T23:50:58+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-10-08T23:50:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=18e176659e8afe402cab7d39972f2d56f2cf378f'/>
<id>18e176659e8afe402cab7d39972f2d56f2cf378f</id>
<content type='text'>
	[PATCH] [Bug #21629] Initialize `struct RString`

which appears to be missed in the previous commit for some reason.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	[PATCH] [Bug #21629] Initialize `struct RString`

which appears to be missed in the previous commit for some reason.
</pre>
</div>
</content>
</entry>
<entry>
<title>RString NULL ptr check only when RUBY_DEBUG</title>
<updated>2023-07-24T14:57:28+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2023-07-24T14:57:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=14d154076876a6566b273f0eb3c4a56c681a6b13'/>
<id>14d154076876a6566b273f0eb3c4a56c681a6b13</id>
<content type='text'>
Since edf01d4e82d8e44ee30ec41fbcb7f802bc8b8c5d, fake string treats
NULL as an empty string.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since edf01d4e82d8e44ee30ec41fbcb7f802bc8b8c5d, fake string treats
NULL as an empty string.
</pre>
</div>
</content>
</entry>
<entry>
<title>Unify length field for embedded and heap strings  (#7908)</title>
<updated>2023-06-06T14:19:20+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2023-06-06T14:19:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7577c101ed6452de3e72fadb43db595946acc701'/>
<id>7577c101ed6452de3e72fadb43db595946acc701</id>
<content type='text'>
* Unify length field for embedded and heap strings

The length field is of the same type and position in RString for both
embedded and heap allocated strings, so we can unify it.

* Remove RSTRING_EMBED_LEN</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Unify length field for embedded and heap strings

The length field is of the same type and position in RString for both
embedded and heap allocated strings, so we can unify it.

* Remove RSTRING_EMBED_LEN</pre>
</div>
</content>
</entry>
<entry>
<title>[Feature #19579] Remove !USE_RVARGC code (#7655)</title>
<updated>2023-04-04T21:30:06+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2023-04-04T21:30:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=1da2e7fca35dc697d85dd91d2572ab58d08cd3bc'/>
<id>1da2e7fca35dc697d85dd91d2572ab58d08cd3bc</id>
<content type='text'>
Remove !USE_RVARGC code

[Feature #19579]

The Variable Width Allocation feature was turned on by default in Ruby
3.2. Since then, we haven't received bug reports or backports to the
non-Variable Width Allocation code paths, so we assume that nobody is
using it. We also don't plan on maintaining the non-Variable Width
Allocation code, so we are going to remove it.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove !USE_RVARGC code

[Feature #19579]

The Variable Width Allocation feature was turned on by default in Ruby
3.2. Since then, we haven't received bug reports or backports to the
non-Variable Width Allocation code paths, so we assume that nobody is
using it. We also don't plan on maintaining the non-Variable Width
Allocation code, so we are going to remove it.</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused and accidentally public rb_str_shared_root_p()</title>
<updated>2022-06-16T11:20:20+00:00</updated>
<author>
<name>Alan Wu</name>
<email>XrXr@users.noreply.github.com</email>
</author>
<published>2022-06-16T11:20:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=714a4942fdb1e71ce38032a9f4bab10855a4bea8'/>
<id>714a4942fdb1e71ce38032a9f4bab10855a4bea8</id>
<content type='text'>
This function was added to a public header in [1] probably
unintentionally since it's not used anywhere, exposes implementation
details, and isn't related to the goals of that pull request.

[1]: 56cc3e99b6b9ec004255280337f6b8353f5e5b06</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This function was added to a public header in [1] probably
unintentionally since it's not used anywhere, exposes implementation
details, and isn't related to the goals of that pull request.

[1]: 56cc3e99b6b9ec004255280337f6b8353f5e5b06</pre>
</div>
</content>
</entry>
<entry>
<title>Move String RVALUES between pools</title>
<updated>2022-06-13T17:11:27+00:00</updated>
<author>
<name>Matt Valentine-House</name>
<email>matt@eightbitraptor.com</email>
</author>
<published>2022-04-06T08:55:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=56cc3e99b6b9ec004255280337f6b8353f5e5b06'/>
<id>56cc3e99b6b9ec004255280337f6b8353f5e5b06</id>
<content type='text'>
And re-embed any strings that can now fit inside the slot they've been
moved to
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
And re-embed any strings that can now fit inside the slot they've been
moved to
</pre>
</div>
</content>
</entry>
<entry>
<title>Suppress possible loss of data warnings</title>
<updated>2022-01-14T04:46:12+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2022-01-13T15:41:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9fa9cf4006b2278ee3de3aa75ab0697c4c119744'/>
<id>9fa9cf4006b2278ee3de3aa75ab0697c4c119744</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Make embedded string length a long for VWA</title>
<updated>2022-01-12T17:00:55+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-01-11T20:19:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2d81a718eca679b9bf458beccf1e7a86b812c3e2'/>
<id>2d81a718eca679b9bf458beccf1e7a86b812c3e2</id>
<content type='text'>
A short (2 bytes) will cause unaligned struct accesses when strings are
used as a buffer to directly store binary data.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A short (2 bytes) will cause unaligned struct accesses when strings are
used as a buffer to directly store binary data.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use unsigned short for length of embedded strings</title>
<updated>2022-01-07T20:48:06+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2022-01-07T20:11:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=bc643bbe2e2c1afbed18ce2bcf4aed138fece412'/>
<id>bc643bbe2e2c1afbed18ce2bcf4aed138fece412</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
