| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
It is not dumped, as it is a short alias for `:encoding`.
|
| |
|
| |
|
| |
|
|
|
| |
s/Thtread/Thread
|
| |
|
|
|
|
| |
there are currently no examples and to contrast with String#unpack.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
rb_str_buf_new always allocates at least 127 bytes of capacity, even
when less is requested.
> ObjectSpace.dump(%w[a b c].join)
{"address":"0x7f935f06ebf0", "type":"STRING", "class":"0x7f935d8b7bb0", "bytesize":3, "capacity":127, "value":"abc", "encoding":"UTF-8", "memsize":168, "flags":{"wb_protected":true}}
Instead, by using rb_str_new and then setting the length to 0, we can
allocate the exact amount of memory needed, without extra capacity.
> ObjectSpace.dump(%w[a b c].join)
{"address":"0x7f903fcab530", "type":"STRING", "class":"0x7f903f8b7988", "embedded":true, "bytesize":3, "value":"abc", "encoding":"UTF-8", "memsize":40, "flags":{"wb_protected":true}}
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Single assignment with rescue modifier applies rescue to the RHS:
a = raise rescue 1 # a = (raise rescue 1)
Previously, multiple assignment with rescue modifier applied rescue
to the entire expression:
a, b = raise rescue [1, 2] # (a, b = raise) rescue [1, 2]
This makes multiple assignment with rescue modifier consistent with
single assignment with rescue modifier, applying rescue to the RHS:
a, b = raise rescue [1, 2] # a, b = (raise rescue [1, 2])
Implements [Feature #8239]
Fixes [Bug #8279]
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit c9eb8f82e9febeb634a23bec6aeea915eb25fe26.
The change caused "implicit declaration" warning and actual segfault.
```
/tmp/ruby/v2/src/trunk-gc-asserts/enc/gb2312.c: In function ‘Init_gb2312’:
/tmp/ruby/v2/src/trunk-gc-asserts/enc/gb2312.c:6:31: warning: implicit declaration of function ‘rb_enc_find’ [-Wimplicit-function-declaration]
rb_enc_register("GB2312", rb_enc_find("EUC-KR"));
^~~~~~~~~~~
/tmp/ruby/v2/src/trunk-gc-asserts/enc/gb2312.c:6:31: warning: passing argument 2 of ‘rb_enc_register’ makes pointer from integer without a cast [-Wint-conversion]
<command-line>:0:19: note: expected ‘OnigEncoding {aka const struct OnigEncodingTypeST *}’ but argument is of type ‘int’
/tmp/ruby/v2/src/trunk-gc-asserts/regenc.h:231:12: note: in expansion of macro ‘ONIG_ENC_REGISTER’
extern int ONIG_ENC_REGISTER(const char *, OnigEncoding);
^~~~~~~~~~~~~~~~~
```
|
| |
|
| |
|
|
|
|
|
|
|
| |
ef64ab917eec02491f6bf7233a4031a8c35385e3 didn't fix the issue, so the
size seems not enough yet.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/osx1014/ruby-master/log/20190809T114503Z.fail.html.gz
|
| |
|
|
|
|
|
|
|
|
| |
On macOS Mojave, the child process invoked in TestFiber#test_stack_size
gets stuck because the stack overflow detection is too late.
(ko1 figured out the mechanism of the failure.)
This change attempts to detect stack overflow earlier.
|
|
|
|
| |
Fix TypeError when typing `''.[TAB]`
|
|
|
|
|
|
|
| |
`make test-all TESTS=name` can specify running test files by name.
name can be dirname ('dir/') or a file ('.../test_foo.rb'). This
patch complement `test_` prefix for a test. So we only need to
specify `TESTS=ruby/hash` which means `TESTS=ruby/test_hash.rb`.
|
| |
|
|
|
|
| |
thread.c requires gc.h on mswin build. Sorry.
|
|
|
|
|
|
|
|
| |
debug utility macro rp() (rp_m()) and bp() are introduced.
* rp(obj) shows obj information w/o any side-effect to STDERR.
* rp_m(m, obj) is similar to rp(obj), but show m before.
* bp() is alias of ruby_debug_breakpoint(), which is registered
as a breakpoint in run.gdb (used by `make gdb` or make gdb-ruby`).
|
|
|
|
| |
Closes: https://github.com/ruby/ruby/pull/2327
|
|
|
|
|
|
|
|
|
|
| |
This commit sets up the CI integration on GitHub Actions. We should
give it a try because queue times are lower and I think we get more
CPUs.
Closes: https://github.com/ruby/ruby/pull/2327
Co-Authored-By: John Hawthorn <john@hawthorn.email>
|
| |
|
|
|
|
|
| |
On test with MJIT, sometimes it fails like:
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2189967
|
|
|
|
|
| |
just fix CI failure
https://travis-ci.org/ruby/ruby/jobs/569625233
|
| |
|
|
|
|
|
|
|
|
|
| |
Methods on duplicated class/module refer same constant inline
cache (IC). Constant access lookup should be done for cloned
class/modules but inline cache doesn't check it.
To check it, this patch introduce new RCLASS_CLONED flag which
are set when if class/module is cloned (both orig and dst).
[Bug #15877]
|
|
|
|
| |
This just enables GitHub actions on our repository so we can try it out.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Binary dumping the iseq for `case foo in []; end` used to crash as
there was no handling for these exception classes.
Pattern matching generates these classes as operands to `putobject`.
[Bug #16088]
Closes: https://github.com/ruby/ruby/pull/2325
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit b1594ca3d6b72edb60927418482652ce93209499.
Revert "Debug appveyor mingw failure"
This reverts commit fa29f65416f1fb3d734a279855728bb0616dbb34.
Though I preserved V=1 for future debugging.
|
| |
|
|
|
|
|
|
|
|
|
| |
to fix a build error like:
https://ci.appveyor.com/project/ruby/ruby/builds/26547644/job/4j7n41e7in97a9kx
Basically copy-pasted what's currently done in MSP-Greg/ruby-loco.
Co-Authored-By: MSP-Greg <greg.mpls@gmail.com>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Without this patch, "raise" event invoked twice when raise an
exception in "load"ed script.
This patch by danielwaterworth (Daniel Waterworth).
[Bug #15877]
|