Граф коммитов

59700 Коммитов

Автор SHA1 Сообщение Дата
卜部昌平 797c46917e internal/range.h rework
Eliminate macros for better readability.
2019-12-26 20:45:12 +09:00
卜部昌平 719efe72b0 internal/process.h rework
Eliminated the macro to convert into an inline function.
2019-12-26 20:45:12 +09:00
卜部昌平 c524df0780 internal/proc.h rework
Annotated MJIT_FUNC_EXPORTED functions as such.  Declaration of
rb_sym_to_proc is moved into this file because the function is defined
in proc.c rather than string.c.
2019-12-26 20:45:12 +09:00
卜部昌平 d0e0c884bb internal/object.h rework
Eliminated macros.  As a side effect struct RBasicRaw is no longer
required because we can now define anonymous structs inside of inline
functions.
2019-12-26 20:45:12 +09:00
卜部昌平 c27bcd7057 internal/gc.h rework
Improved readability by reducing the use of macros.  Also moved some
part of internal/compilers.h into this file, because it seems to be the
right place for them.
2019-12-26 20:45:12 +09:00
卜部昌平 adc49f0f9a internal/sanitizers.h rework
Rearrange macro orders for better readability.
2019-12-26 20:45:12 +09:00
卜部昌平 ec6f6b53d8 internal/error.h rework
Reduce macros for readability.  Also transplanted some part of
internal/file.h into here because the delcared functions are in fact
defined in error.c.
2019-12-26 20:45:12 +09:00
卜部昌平 23c2a27bf6 internal/compile.h rework
This file containes other materials than in compile.c.  I could perhaps
split them into files, but felt overkill.  Just add comments that
describe the situations.
2019-12-26 20:45:12 +09:00
卜部昌平 0723db6c39 internal/array.h rework
Rearrange contents for better readability, reduce macros for the same
reason, and mark MJIT_FUNC_EXPORTED functions as such.
2019-12-26 20:45:12 +09:00
卜部昌平 f3a229fe2d internal/variable.h rework
Eliminated macros.  Also marked MJIT_FUNC_EXPORTED functions as such.
Some of them are declared in constant.h so edited that file also.
2019-12-26 20:45:12 +09:00
卜部昌平 989068cf70 internal/imemo.h rework
Arrange contents and eliminate macros, to make them readable.

Macro IFUNC_NEW was deleted because there was only one usage.
2019-12-26 20:45:12 +09:00
卜部昌平 63c9f620cf internal/class.h rework
This file has almost nothing to do.  Added some #ifdef lines and
rearranged file contents.

Those macros are unable to translate into inline functions, because they
are used as lvalues of assignments.
2019-12-26 20:45:12 +09:00
卜部昌平 7d71d916a2 internal/struct.h rework
Replace macros with inline functions of equivalent contents, for much
improved readability.
2019-12-26 20:45:12 +09:00
卜部昌平 e72b8592d9 internal/hash.h rework
Reduce macros to make them inline functions, as well as mark
MJIT_FUNC_EXPORTED functions explicitly as such.

Definition of ar_hint_t is simplified.  This has been the only possible
definition so far.
2019-12-26 20:45:12 +09:00
卜部昌平 f0c02a0949 internal/numeric.h rework
Marked MJIT_FUNC_EXPORTED functions as such.  Other changes are rather
cosmetic.
2019-12-26 20:45:12 +09:00
卜部昌平 099778a6da internal/bingnum.h rework
Turn macros into inline functions for better readability.  Also add
rb_int128t2big delcaration, which was missing.
2019-12-26 20:45:12 +09:00
卜部昌平 f6dc053faf internal/fixnum.h rework
Add #include lines, move FIXNUM_POSITIVE_P etc. from numeric.h.
2019-12-26 20:45:12 +09:00
卜部昌平 68c0dc8d36 internal/static_assert.h rework
ISO/IEC 9899:2011 section 7.2 states that <assert.h> must define
static_assert.  Use it when available.
2019-12-26 20:45:12 +09:00
卜部昌平 6581db2187 internal/warnings.h rework
Not a big rewrite.  Just to make those macros readable.
2019-12-26 20:45:12 +09:00
卜部昌平 64ec438b5b internal/bits.h rework
Improving readability by converting some macros into inline functions.
Also improved support for recent x86_64 processors, which have better
instructions for the purposes.
2019-12-26 20:45:12 +09:00
卜部昌平 0958e19ffb add several __has_something macro
With these macros implemented we can write codes just like we can assume
the compiler being clang.  MSC_VERSION_SINCE is defined to implement
those macros, but turned out to be handy for other places.  The -fdeclspec
compiler flag is necessary for clang to properly handle __has_declspec().
2019-12-26 20:45:12 +09:00
卜部昌平 863dbb21d8 assume C99
Now that we no longer support old compilers, we can safely delete
several obsolete #ifdef gurads.  Also because (as of writing) it is
impossible to compile the program using C++ compilers, lets just
entirely prohibit __cplusplus to reduce # of LOCs.

Note however that we still cannot eliminate __STDC_VERSION__ checks,
because MSVC does not define it, saying its C99 support is partial.
See also https://social.msdn.microsoft.com/Forums/vstudio/en-US/53a4fd75-9f97-48b2-aa63-2e2e5a15efa3
2019-12-26 20:45:12 +09:00
卜部昌平 1dd149d3b1 re-add io.h and encoding.h into internal.h
This is tentative.  For the sake of simplicity we partially revert
commits e9cb552ec9, ee85a6e72b and 51edb30042.  Will decouple them
once again when we are ready.
2019-12-26 20:45:12 +09:00
卜部昌平 b739a63eb4 split internal.h into files
One day, I could not resist the way it was written.  I finally started
to make the code clean.  This changeset is the beginning of a series of
housekeeping commits.  It is a simple refactoring; split internal.h into
files, so that we can divide and concur in the upcoming commits.  No
lines of codes are either added or removed, except the obvious file
headers/footers.  The generated binary is identical to the one before.
2019-12-26 20:45:12 +09:00
卜部昌平 ba78bf9778 debug_counter.h must be self-contained
Include what is necessary.
2019-12-26 20:45:12 +09:00
Nobuyoshi Nakada b25e27277d
Transform hash keys by a hash [Feature #16274] 2019-12-26 15:50:34 +09:00
git dced0e5745 * 2019-12-26 [ci skip] 2019-12-26 10:58:26 +09:00
Yukihiro "Matz" Matsumoto 537a1cd5a9 2.8.0 (tentative; to be 3.0.0) development has started. 2019-12-26 10:55:58 +09:00
aycabta e1e1d92277 [ruby/reline] Version 0.1.2
https://github.com/ruby/reline/commit/b41024e317
2019-12-25 18:47:47 +09:00
aycabta 8a705245e5 Save last breaking point to complete 2019-12-25 18:45:24 +09:00
NARUSE, Yui 1002de58ec fix version regexp 2019-12-25 18:02:53 +09:00
NARUSE, Yui a1018b2c5f fix typo 2019-12-25 17:01:26 +09:00
Yusuke Endoh 75dca097b8 [bundler/bundler] Do `require "rubygems"` only when needed
This require causes circular require.

```
$ touch empty_file

$ RUBYGEMS_GEMDEPS=empty_file ./local/bin/ruby -w -e ''
/home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92: warning: /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92: warning: loading in progress, circular require considered harmful - /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems.rb
	from <internal:gem_prelude>:1:in  `<internal:gem_prelude>'
	from <internal:gem_prelude>:1:in  `require'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems.rb:1417:in  `<top (required)>'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems.rb:1203:in  `use_gemdeps'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/user_interaction.rb:47:in  `use_ui'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems.rb:1204:in  `block in use_gemdeps'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in  `require'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in  `require'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/bundler.rb:11:in  `<top (required)>'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/bundler.rb:11:in  `require_relative'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/bundler/rubygems_integration.rb:3:in  `<top (required)>'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in  `require'
	from /home/mame/work/ruby/local/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in  `require'
```

https://github.com/bundler/bundler/commit/c7c5bcea92
2019-12-25 15:38:55 +09:00
Kenta Murata 27453b04c8
Update the version of bigdecimal to 2.0.0 (#2784) 2019-12-25 15:21:50 +09:00
Nobuyoshi Nakada 56e002981f
Show the error line only when same as the current 2019-12-25 14:49:48 +09:00
Koichi Sasada 9808e01090 export a function for MJIT.
rb_iseq_complete() can be used by MJIT.
2019-12-25 14:37:53 +09:00
Koichi Sasada d9bf9c572f take care of USE_LAZY_LOAD=1.
On USE_LAZY_LOAD=1, the iseq should be loaded. So rb_iseq_check()
is needed. Furthermore, now lazy loading with builtin_function_table
is not supported, so it should cancel lazy loading.
2019-12-25 14:12:33 +09:00
Yusuke Endoh 81e377023c range.c: Range#min with a beginless one now raise an explicit exception
[Bug #16450]
2019-12-25 13:36:23 +09:00
aycabta cd6c013b07 Add readline and readline-ext to default gems list in NEWS 2019-12-25 12:55:53 +09:00
Koichi Sasada 227c3d6426 add ref to NEWS entry 2019-12-25 12:06:16 +09:00
Yusuke Endoh 3345eab934 NEWS: add a ticket reference 2019-12-25 11:37:27 +09:00
Yusuke Endoh b9e35d2709 NEWS: add a ticket reference 2019-12-25 11:31:44 +09:00
Yusuke Endoh e0929c44dd NEWS: add ticket references 2019-12-25 11:27:13 +09:00
Nobuyoshi Nakada eb3f19b9b8
update-bundled_gems: drop branch name on github [ci skip] 2019-12-25 11:20:07 +09:00
aycabta 00710d1076 [ruby/readline] Version 0.0.2
https://github.com/ruby/readline/commit/42b71f3fc0
2019-12-25 10:57:44 +09:00
aycabta e51a34511c [ruby/readline] Use a box to make easier to see the message
https://github.com/ruby/readline/commit/e49e942053
2019-12-25 10:57:38 +09:00
aycabta 57c74841c7 [ruby/readline] Fix any wrong in messages
https://github.com/ruby/readline/commit/a2cf437c8f
2019-12-25 10:57:29 +09:00
aycabta de0f4f2fd7 [ruby/readline] Version 0.0.1
https://github.com/ruby/readline/commit/d2363cad33
2019-12-25 10:56:11 +09:00
aycabta 5d20865708 [ruby/readline] Add post_install_message
https://github.com/ruby/readline/commit/03126372b5
2019-12-25 10:55:51 +09:00
aycabta 999a2819a7 [ruby/readline-ext] Version 0.1.0
https://github.com/ruby/readline-ext/commit/f5abaf5be1
2019-12-25 10:53:44 +09:00