Issue #19447 has been updated by tenderlovemaking (Aaron Patterson).
Status changed from Open to Closed
I merged the PR. Thank you!
----------------------------------------
Bug #19447: Merge `internal/rgengc.h` into public `internal/gc.h` header
https://bugs.ruby-lang.org/issues/19447#change-102118
* Author: eightbitraptor (Matthew Valentine-House)
* Status: Closed
* Priority: Normal
* Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN
----------------------------------------
[[Github PR #7310](https://github.com/ruby/ruby/pull/7310)]
This PR merges the `rgengc.h` internal header into the public internal `gc.h` header.
`rgengc.h` was introduced as part of this commit
`9e6e39c3512f7a962c44dc3729c98a0f8be90341` when `ruby.h` was split apart. It mostly
contains macros for enabling the write barrier on objects,
I have merged this into `include/ruby/internal/gc.h` in order to keep the internal GC api
spread across as few places as possible.
I don't believe that this will cause a problem with C extensions despite the removal
of a public header file. Both `include/ruby/internal/rgengc.h` and
`include/ruby/internal/gc.h` were both included from `ruby/ruby.h` and so every C
extension that `#include <ruby/ruby.h>` already has access to their definitions.
I think that the only case there would be a problem is if a user had explicitly `#include
<ruby/internal/rgengc.h>` which is unneccesary if they've already included
`<ruby/ruby.h>`.
--
https://bugs.ruby-lang.org/