From: eregontp@... Date: 2015-06-07T13:59:59+00:00 Subject: [ruby-core:69487] [Ruby trunk - Bug #11231] Should rb_alloc_tmp_buffer() be public API? Issue #11231 has been updated by Benoit Daloze. Thanks for the explanations! ---------------------------------------- Bug #11231: Should rb_alloc_tmp_buffer() be public API? https://bugs.ruby-lang.org/issues/11231#change-52787 * Author: Benoit Daloze * Status: Closed * Priority: Normal * Assignee: * ruby -v: ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN ---------------------------------------- `rb_alloc_tmp_buffer()` is declared in `include/ruby/intern.h`. However it seems this is a fairly internal API as it deals with a `VALUE` pointer and has undocumented liveliness/GC behavior. There was a try to specify it in https://github.com/rubinius/rubinius/commit/bf0a6b988661d3917e9dcea62746b07b5f6d00ca but this results in SEGV on MRI (I guess it is not intended usage of the API, but what would be correct usage?). It is used in the `ALLOCV()` macro, which is maybe the reason why this is part of the header? Is there a way to hide such internal function? Or is it on purpose declared publicly? -- https://bugs.ruby-lang.org/