<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/include/ruby/encoding.h, 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>split include/ruby/encoding.h</title>
<updated>2021-10-05T05:18:23+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2021-09-24T01:34:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=312668cf031ce5e018f78d6a7cad9bcdcdac6ae6'/>
<id>312668cf031ce5e018f78d6a7cad9bcdcdac6ae6</id>
<content type='text'>
2,291 lines are too much!  include/ruby/encoding.h became the biggest
header file once it had doxygen comments.  Let us split it into smaller
parts, so that we can better organise their contents.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
2,291 lines are too much!  include/ruby/encoding.h became the biggest
header file once it had doxygen comments.  Let us split it into smaller
parts, so that we can better organise their contents.
</pre>
</div>
</content>
</entry>
<entry>
<title>forgot to delete a redundant comment</title>
<updated>2021-09-10T11:00:06+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2021-08-19T06:18:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=6e8e2b467bc2d1db0a593ddfb23eabdc109d85e1'/>
<id>6e8e2b467bc2d1db0a593ddfb23eabdc109d85e1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>include/ruby/encoding.h: add doxygen</title>
<updated>2021-09-10T11:00:06+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2021-08-06T14:32:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3ca688aeb0506ce2cdf1c7b6f7058e0c42581b01'/>
<id>3ca688aeb0506ce2cdf1c7b6f7058e0c42581b01</id>
<content type='text'>
Must not be a bad idea to improve documents. [ci skip]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Must not be a bad idea to improve documents. [ci skip]
</pre>
</div>
</content>
</entry>
<entry>
<title>rb_interned_id_p: does not exist</title>
<updated>2021-07-15T07:54:59+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2021-07-15T07:49:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=3ce2bf4d908c5cc80b8c53a21a09cd0d9d8ec26c'/>
<id>3ce2bf4d908c5cc80b8c53a21a09cd0d9d8ec26c</id>
<content type='text'>
This declaration was added at commit 0ee5a49dd4ffbbb285c25fa6cba88370ce9
without its implementation.  Must be a mistake.

Note also that we ended up having this exct same functionality
implemented under a name of rb_check_id().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This declaration was added at commit 0ee5a49dd4ffbbb285c25fa6cba88370ce9
without its implementation.  Must be a mistake.

Note also that we ended up having this exct same functionality
implemented under a name of rb_check_id().
</pre>
</div>
</content>
</entry>
<entry>
<title>rb_enc_casefold: does not exist</title>
<updated>2021-07-15T07:54:59+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2021-07-15T07:46:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2d9aacf64457b87a9e9c7ced294a290c9a72626c'/>
<id>2d9aacf64457b87a9e9c7ced294a290c9a72626c</id>
<content type='text'>
This declaration was added at commit 0ee5a49dd4ffbbb285c25fa6cba88370ce9
without its implementation.  Must be a mistake.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This declaration was added at commit 0ee5a49dd4ffbbb285c25fa6cba88370ce9
without its implementation.  Must be a mistake.
</pre>
</div>
</content>
</entry>
<entry>
<title>Expose the rb_interned_str_* family of functions</title>
<updated>2020-11-17T00:39:25+00:00</updated>
<author>
<name>Jean Boussier</name>
<email>jean.boussier@gmail.com</email>
</author>
<published>2020-09-25T12:46:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ef19fb111a8c8bf1a71d46e6fcf34b227e086845'/>
<id>ef19fb111a8c8bf1a71d46e6fcf34b227e086845</id>
<content type='text'>
Fixes [Feature #13381]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes [Feature #13381]
</pre>
</div>
</content>
</entry>
<entry>
<title>sed -i 's|ruby/impl|ruby/internal|'</title>
<updated>2020-05-11T00:24:08+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2020-05-08T09:31:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9e41a75255d15765648279629fd3134cae076398'/>
<id>9e41a75255d15765648279629fd3134cae076398</id>
<content type='text'>
To fix build failures.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To fix build failures.
</pre>
</div>
</content>
</entry>
<entry>
<title>sed -i s/RUBY3/RBIMPL/g</title>
<updated>2020-05-11T00:24:08+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2020-05-04T06:52:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=97672f669af53c41b094772559030195787406be'/>
<id>97672f669af53c41b094772559030195787406be</id>
<content type='text'>
Devs do not love "3".  The only exception is RUBY3_KEYWORDS in parse.y,
which seems unrelated to our interests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Devs do not love "3".  The only exception is RUBY3_KEYWORDS in parse.y,
which seems unrelated to our interests.
</pre>
</div>
</content>
</entry>
<entry>
<title>sed -i s|ruby/3|ruby/impl|g</title>
<updated>2020-05-11T00:24:08+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2020-05-04T06:35:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d7f4d732c199df24620a162372c71ee83ed21e62'/>
<id>d7f4d732c199df24620a162372c71ee83ed21e62</id>
<content type='text'>
This shall fix compile errors.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This shall fix compile errors.
</pre>
</div>
</content>
</entry>
<entry>
<title>add #include guard hack</title>
<updated>2020-04-13T07:06:00+00:00</updated>
<author>
<name>卜部昌平</name>
<email>shyouhei@ruby-lang.org</email>
</author>
<published>2020-04-10T05:11:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=4ff3f205408ff8bb413d69151105d301858136ba'/>
<id>4ff3f205408ff8bb413d69151105d301858136ba</id>
<content type='text'>
According to MSVC manual (*1), cl.exe can skip including a header file
when that:

- contains #pragma once, or
- starts with #ifndef, or
- starts with #if ! defined.

GCC has a similar trick (*2), but it acts more stricter (e. g. there
must be _no tokens_ outside of #ifndef...#endif).

Sun C lacked #pragma once for a looong time.  Oracle Developer Studio
12.5 finally implemented it, but we cannot assume such recent version.

This changeset modifies header files so that each of them include
strictly one #ifndef...#endif.  I believe this is the most portable way
to trigger compiler optimizations. [Bug #16770]

*1: https://docs.microsoft.com/en-us/cpp/preprocessor/once
*2: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
According to MSVC manual (*1), cl.exe can skip including a header file
when that:

- contains #pragma once, or
- starts with #ifndef, or
- starts with #if ! defined.

GCC has a similar trick (*2), but it acts more stricter (e. g. there
must be _no tokens_ outside of #ifndef...#endif).

Sun C lacked #pragma once for a looong time.  Oracle Developer Studio
12.5 finally implemented it, but we cannot assume such recent version.

This changeset modifies header files so that each of them include
strictly one #ifndef...#endif.  I believe this is the most portable way
to trigger compiler optimizations. [Bug #16770]

*1: https://docs.microsoft.com/en-us/cpp/preprocessor/once
*2: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
</pre>
</div>
</content>
</entry>
</feed>
