Age | Commit message (Collapse) | Author |
|
for debug counters
```
../include/ruby/intern.h:1175:137: warning: passing argument 3 of 'rb_define_singleton_method0' from incompatible pointer type [-Wincompatible-pointer-types]
#define rb_define_singleton_method(klass, mid, func, arity) rb_define_singleton_method_choose_prototypem3((arity),(func))((klass),(mid),(func),(arity));
^
../vm.c:2958:5: note: in expansion of macro 'rb_define_singleton_method'
rb_define_singleton_method(rb_cRubyVM, "show_debug_counters", rb_debug_counter_show, 0);
^~~~~~~~~~~~~~~~~~~~~~~~~~
../include/ruby/intern.h:1139:99: note: expected 'VALUE (*)(VALUE) {aka long unsigned int (*)(long unsigned int)}' but argument is of type 'VALUE (*)(void) {aka long unsigned int (*)(void)}'
__attribute__((__unused__,__weakref__("rb_define_singleton_method"),__nonnull__(2,3)))static void rb_define_singleton_method0 (VALUE,const char*,VALUE(*)(VALUE),int);
```
|
|
NMAKE sets MAKE to the full path name, which includes spaces by
the default installation.
|
|
* Removed excess backslashes
* Fixed the target name to try failure.cpp
|
|
[Feature #11297] [Feature #16123]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* array.c (flatten): fix a memory leak in the case of an exception
at conversion of an element to Array.
|
|
|
|
|
|
[Feature #11297] [Feature #16123]
|
|
[Feature #11297] [Feature #16123]
Notes:
Merged: https://github.com/ruby/ruby/pull/2474
|
|
[Feature #11297] [Feature #16123]
Notes:
Merged: https://github.com/ruby/ruby/pull/2474
|
|
This makes it consistent with calling private attribute assignment
methods, which currently is allowed (e.g. `self.value =`).
Calling a private method in this way can be useful when trying to
assign the return value to a local variable with the same name.
[Feature #11297] [Feature #16123]
Notes:
Merged: https://github.com/ruby/ruby/pull/2474
|
|
Define overloading functions of rb_define_virtual_variable and
rb_define_hooked_variable, for combinations with and without
ANYARGS casts.
Notes:
Merged: https://github.com/ruby/ruby/pull/2461
|
|
By using template and overloading, instead of transparent union.
Notes:
Merged: https://github.com/ruby/ruby/pull/2461
|
|
|
|
|
|
|
|
To substitute suffixes and VPATH for nmake.
|
|
|
|
This reverts commit 69e209a3450bd6b281dcad1d96a34e9cab184845.
The debug has finishted.
|
|
|
|
|
|
|
|
|
|
to fix another keyword argument warning which was added recently.
|
|
The output of RubyVM::InstructionSequence#to_binary is extremely large.
We have reduced the output of #to_binary by more than 70%.
The execution speed of RubyVM::InstructionSequence.load_from_binary is about 7% slower, but when reading a binary from a file, it may be faster than the master.
Since Bootsnap gem uses #to_binary, this proposal reduces the compilation cache size of Rails projects to about 1/4.
See details: [Feature #16163]
|
|
|
|
|
|
See also https://travis-ci.org/ruby/ruby/jobs/586452224
Notes:
Merged: https://github.com/ruby/ruby/pull/2468
|
|
I noticed that in case of cache misshit, re-calculated cc->me can
be the same method entry than the pevious one. That is an okay
situation but can't we partially reuse the cache, because cc->call
should still be valid then?
One thing that has to be special-cased is when the method entry
gets amended by some refinements. That happens behind-the-scene
of call cache mechanism. We have to check if cc->me->def points to
the previously saved one.
Calculating -------------------------------------
trunk ours
vm2_poly_same_method 1.534M 2.025M i/s - 6.000M times in 3.910203s 2.962752s
Comparison:
vm2_poly_same_method
ours: 2025143.9 i/s
trunk: 1534447.2 i/s - 1.32x slower
Notes:
Merged: https://github.com/ruby/ruby/pull/2468
|
|
Make draft release packages. (Release packages are official after tests and release announce.)
- Copy from ruby/actions
- Change trigger tags from `draft/v*` to `v*` (I use `draft/v*` on ruby/actions because I want to avoid to cause trouble with shell history on working directory of ruby/ruby.)
- Change secrets names because secrets are repository local and use different names between ruby/ruby and ruby/actions.
|
|
|
|
|
|
rb_vm_call0 allocates its own struct call_info etc. But they are
already there in case of rb_funcallv_with_cc. Let's just pass the
existing ones, instead of re-creation.
|
|
|
|
|
|
|
|
|
|
|
|
Replace [arg=1, args] with [arg, args] so we can actually test
the value correctly.
Add some missing tests for **h3 when method accepts (**args).
Add tests for passing positional hashes to (**args) methods and
check for the expected warnings/errors.
|
|
|
|
Look up language module with `MakeMakefile.[]`, insted of a
accessing constant under that module directly, to get rid of
expose the constant to the toplevel inadvertently.
|
|
|
|
It is exposed to the topleven namespace via included MakeMakefile.
|
|
|