mirror of
https://github.com/ruby/ruby.git
synced 2025-08-15 13:39:04 +02:00
ruby/ruby.h: remove unnecessary exports from C-API
Needlessly exporting can reduce performance locally and increase binary size. Increasing the footprint of our C-API larger is also detrimental to our development as it encourages tighter coupling with our internals; making it harder for us to preserve compatibility. If some parts of the core codebase needs access to globals, internal.h should be used instead of anything in include/ruby/*. "Urabe, Shyouhei" <shyouhei@ruby-lang.org> wrote: > On Thu, Jan 18, 2018 at 7:33 PM, Eric Wong <normalperson@yhbt.net> wrote: > > shyouhei@ruby-lang.org wrote: > >> https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=61908 > >> > >> export rb_mFConst > > > > Why are we exporting all these and making the public C-API bigger? > > If anything, we should make these static. Thanks. > > No concrete reason, except they have already been externed in 2.5. > These variables had lacked declarations so far, which resulted in their > visibility to be that of extern. The commit is just confirming the status quo. > > I'm not against to turn them into static. This reverts changes from r61910, r61909, r61908, r61907, and r61906. * transcode.c (rb_eUndefinedConversionError): make static (rb_eInvalidByteSequenceError): ditto (rb_eConverterNotFoundError): ditto * process.c (rb_mProcGID, rb_mProcUid, rb_mProcID_Syscall): ditto * file.c (rb_mFConst): ditto * error.c (rb_mWarning, rb_cWarningBuffer): ditto * enumerator.c (rb_cLazy): ditto [Misc #14381] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
0a0b71f3bd
commit
7e669f40be
6 changed files with 10 additions and 20 deletions
|
@ -17,9 +17,9 @@
|
|||
#define ENABLE_ECONV_NEWLINE_OPTION 1
|
||||
|
||||
/* VALUE rb_cEncoding = rb_define_class("Encoding", rb_cObject); */
|
||||
VALUE rb_eUndefinedConversionError;
|
||||
VALUE rb_eInvalidByteSequenceError;
|
||||
VALUE rb_eConverterNotFoundError;
|
||||
static VALUE rb_eUndefinedConversionError;
|
||||
static VALUE rb_eInvalidByteSequenceError;
|
||||
static VALUE rb_eConverterNotFoundError;
|
||||
|
||||
VALUE rb_cEncodingConverter;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue