<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/error.c, branch v4.0.4</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Use actual class instead of singleton class in frozen error message</title>
<updated>2025-12-09T22:35:50+00:00</updated>
<author>
<name>Jeremy Evans</name>
<email>code@jeremyevans.net</email>
</author>
<published>2025-11-23T03:51:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=76fb0d244b95a23116bfe72bb2422395c3a76477'/>
<id>76fb0d244b95a23116bfe72bb2422395c3a76477</id>
<content type='text'>
With the following code:

```ruby
object = []
object.singleton_class
object.freeze
object.instance_variable_set(:@a, 42)
```

The previous error message was:

```
can't modify frozen #&lt;Class:#&lt;Array:0x00000631d1308f78&gt;&gt;: []
```

With this change, the error message is:

```
can't modify frozen Array: []
```

Since we show the inspect value of the affected object, I think
including the singleton class instead of the actual class if it
exists makes the error message harder to understand.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With the following code:

```ruby
object = []
object.singleton_class
object.freeze
object.instance_variable_set(:@a, 42)
```

The previous error message was:

```
can't modify frozen #&lt;Class:#&lt;Array:0x00000631d1308f78&gt;&gt;: []
```

With this change, the error message is:

```
can't modify frozen Array: []
```

Since we show the inspect value of the affected object, I think
including the singleton class instead of the actual class if it
exists makes the error message harder to understand.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: Allow some mingw implemeations to use old msvcrt</title>
<updated>2025-11-19T13:51:09+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-11-19T13:51:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7840ef2f4370d22c5d793e2d32537d6bf9923ce6'/>
<id>7840ef2f4370d22c5d793e2d32537d6bf9923ce6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: Drop support for older than MSVC 8.0/_MSC_VER 1400</title>
<updated>2025-11-19T02:03:42+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-12-09T05:56:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=cdb9893c552f67a6065dcb165b2040d35c57aee3'/>
<id>cdb9893c552f67a6065dcb165b2040d35c57aee3</id>
<content type='text'>
Visual C++ 2005 (8.0):
- _MSC_VER: 1400
- MSVCRT_VERSION: 80
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Visual C++ 2005 (8.0):
- _MSC_VER: 1400
- MSVCRT_VERSION: 80
</pre>
</div>
</content>
</entry>
<entry>
<title>[DOC] Fix typos</title>
<updated>2025-10-13T19:21:36+00:00</updated>
<author>
<name>Étienne Barrié</name>
<email>etienne.barrie@gmail.com</email>
</author>
<published>2025-10-13T14:33:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=79b268567512cdb802488107be1dcf843f371076'/>
<id>79b268567512cdb802488107be1dcf843f371076</id>
<content type='text'>
Inspired by 42ba82424d908c290a4a34ced8853f0a403b734b, I looked for other
occurrences of "the the".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Inspired by 42ba82424d908c290a4a34ced8853f0a403b734b, I looked for other
occurrences of "the the".
</pre>
</div>
</content>
</entry>
<entry>
<title>[Bug #21629] Initialize `struct RString`</title>
<updated>2025-10-08T09:19:47+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-10-08T09:19:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2bb6fe3854e2a4854bb89bfce4eaaea9d848fd1b'/>
<id>2bb6fe3854e2a4854bb89bfce4eaaea9d848fd1b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>rb_bug shouldn't assume ec is available (don't use GET_EC())</title>
<updated>2025-09-24T17:41:04+00:00</updated>
<author>
<name>Luke Gruber</name>
<email>luke.gruber@shopify.com</email>
</author>
<published>2025-09-24T14:33:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d869164124cfca347c30c19c85947a69cee03db8'/>
<id>d869164124cfca347c30c19c85947a69cee03db8</id>
<content type='text'>
ec is unavailable on timer thread, for instance.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ec is unavailable on timer thread, for instance.
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert `name_err_mesg` to use `rb_gc_mark_and_move`</title>
<updated>2025-08-07T19:00:00+00:00</updated>
<author>
<name>Jean Boussier</name>
<email>jean.boussier@gmail.com</email>
</author>
<published>2025-08-07T12:42:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=bc9781c264b9e37c2482dba429b560436104a1f5'/>
<id>bc9781c264b9e37c2482dba429b560436104a1f5</id>
<content type='text'>
The `p-&gt;field = rb_gc_location(p-&gt;field)` isn't ideal because it means all
references are rewritten on compaction, regardless of whether the referenced
object has moved. This isn't good for caches nor for Copy-on-Write.

`rb_gc_mark_and_move` avoid needless writes, and most of the time allow to
have a single function for both marking and updating references.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The `p-&gt;field = rb_gc_location(p-&gt;field)` isn't ideal because it means all
references are rewritten on compaction, regardless of whether the referenced
object has moved. This isn't good for caches nor for Copy-on-Write.

`rb_gc_mark_and_move` avoid needless writes, and most of the time allow to
have a single function for both marking and updating references.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix typo in documentation comment for exc_inspect method in error.c</title>
<updated>2025-08-05T12:58:12+00:00</updated>
<author>
<name>ydah</name>
<email>t.yudai92@gmail.com</email>
</author>
<published>2025-08-05T12:46:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3d8af5df11e8dba8ccd37b03f9f5b92b2bc66dcb'/>
<id>3d8af5df11e8dba8ccd37b03f9f5b92b2bc66dcb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[DOC] Fill undocumented documents</title>
<updated>2025-08-03T17:23:43+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-08-03T17:23:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6179cc011829b9e4c7b253ac2d2a3f47d8fd6890'/>
<id>6179cc011829b9e4c7b253ac2d2a3f47d8fd6890</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix style [ci skip]</title>
<updated>2025-04-19T13:02:10+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-04-19T13:02:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c218862d3c664b4afff5acce55d7a6eb13779809'/>
<id>c218862d3c664b4afff5acce55d7a6eb13779809</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
