Yukihiro "Matz" Matsumoto
f080005720
Merge pull request #5735 from jbampton/pre-commit-skip-docs
...
Add docs on the `SKIP` pre-commit environment variable
2022-06-27 13:18:43 +09:00
John Bampton
9841980bce
Add docs on the SKIP pre-commit environment variable
...
Knowing about `SKIP` is useful
https://pre-commit.com/#temporarily-disabling-hook
2022-06-27 14:01:14 +10:00
Yukihiro "Matz" Matsumoto
dc8da16b6b
Merge pull request #5734 from sjothen/master
...
Fix out of bounds access by memcmp in String#rindex
2022-06-27 10:34:07 +09:00
Stephen Jothen
103f8bcad0
Fix out of bounds access by memcmp in String#rindex
2022-06-25 15:09:35 +02:00
Yukihiro "Matz" Matsumoto
a3ccda657e
Merge pull request #5733 from dearblue/patch-5402
...
Do not expand "included class" in `mrb_proc_new()`.
2022-06-25 14:48:02 +09:00
Yukihiro "Matz" Matsumoto
d3e8494f8d
Merge pull request #5732 from dearblue/patch-5272
...
Fixes `mrb_vm_ci_target_class_set()`
2022-06-25 12:24:33 +09:00
Yukihiro "Matz" Matsumoto
0caaf4da7f
Merge pull request #5731 from dearblue/fix5725
...
Use `mrb->object_class` instead if `MRB_PROC_TARGET_CLASS()` is `NULL`
2022-06-25 12:23:34 +09:00
dearblue
8bab20ef7c
Do not expand "included class" in mrb_proc_new().
...
If `target_class->tt` is `MRB_TT_ICLASS`, it may cause loss of class inheritance relationships.
This problem is caused by #5402 .
ref. #5725
2022-06-25 11:45:18 +09:00
dearblue
109da08d8a
Fixes mrb_vm_ci_target_class_set()
...
If `ci->u.target_class` was `NULL`, the value of the argument was always ignored.
This problem is caused by #5272 .
ref. #5725
2022-06-25 11:41:55 +09:00
dearblue
1489338145
Use mrb->object_class instead if MRB_PROC_TARGET_CLASS() is NULL
...
Fix #5725
2022-06-25 11:10:39 +09:00
Yukihiro "Matz" Matsumoto
ab3486d9ff
Merge pull request #5730 from aoki1980taichi/patch-1
...
delete unused variable
2022-06-25 07:37:24 +09:00
aoki1980taichi
ad1d35c342
delete unused variable
...
cnt is unused
2022-06-25 00:21:23 +09:00
Yukihiro "Matz" Matsumoto
88f3c19e5d
Merge pull request #5729 from aoki1980taichi/patch-1
...
delete unnecessary code
2022-06-24 22:58:53 +09:00
aoki1980taichi
4332f56056
delete unnecessary code
...
"else 0.0" is not used
2022-06-24 19:22:28 +09:00
Yukihiro "Matz" Matsumoto
d4d902b072
Merge pull request #5728 from artichoke/lopopolo/broken-extern-c-blocks-mrb-use-cxx-exception
...
Fix mismatched braces in `extern "C"` blocks when compiling as C++
2022-06-24 17:14:03 +09:00
Ryan Lopopolo
8a5e6f47f2
Match #if at end of vm.c
2022-06-23 22:25:15 -07:00
Ryan Lopopolo
3af82fbb51
Respect MRB_USE_CXX_ABI #define
2022-06-23 21:54:53 -07:00
Ryan Lopopolo
c4c37b2069
Fix mismatched braces in extern "C" blocks when compiling as C++
...
When compiling mruby with `-DMRB_USE_CXX_EXCEPTION`, clang fails to
compile and emits these warnings:
vendor/mruby/src/vm.c:3066:1: error: extraneous closing brace ('}')
} /* end of extern "C" */
^
vendor/mruby/src/vm.c:3072:7: error: expected '}'
#endif
^
vendor/mruby/src/vm.c:3070:12: note: to match this '{'
extern "C" {
^
2 errors generated.
Fixup the implementation of the `extern "C"` block in `vm.c`.
2022-06-23 21:38:55 -07:00
Yukihiro "Matz" Matsumoto
16cc6f3292
build_config/host-debug.rb: enable MRB_UTF8_STRING; ref #5727
2022-06-24 13:25:46 +09:00
Yukihiro "Matz" Matsumoto
89f22158d3
string.rb (each_line): may truncate string by mistake; fix #5727
2022-06-24 13:25:45 +09:00
Yukihiro "Matz" Matsumoto
22d0f4580e
Merge pull request #5726 from aoki1980taichi/patch-1
...
fix typo otherBasis -> orthoBasis
2022-06-24 06:29:15 +09:00
aoki1980taichi
ad8286c447
fix typo otherBasis -> orthoBasis
...
The original function name in ao.c was orthoBasis.
I guess the function is generating orthonormal basis (https://en.wikipedia.org/wiki/Orthonormal_basis ).
2022-06-24 06:26:58 +09:00
Yukihiro "Matz" Matsumoto
92be161b1f
vm.c (check_target_class): return Object class if target is NULL.
...
Since #5272 target_class kept in a Proc may be NULL. It crashes
`iij/mruby-require` gem for example; close #5725
2022-06-23 07:54:04 +09:00
Yukihiro "Matz" Matsumoto
cd6e94c09f
mruby/internal.h: move functions from internal.h; #5725
...
To compile `iij/mruby-require` gem.
2022-06-23 07:53:29 +09:00
Yukihiro "Matz" Matsumoto
01392e2719
mrblib/array.rb: add call-seq to each method description. [ci skip]
2022-06-22 19:02:54 +09:00
Yukihiro "Matz" Matsumoto
981740b1f2
mrblib/compar.rb: add call-seq to each method description. [ci skip]
2022-06-22 19:02:48 +09:00
Yukihiro "Matz" Matsumoto
cf7aa74f7c
mruby-rational/rational.c: update error message.
2022-06-21 22:17:17 +09:00
Yukihiro "Matz" Matsumoto
019a2ddff4
mruby-rational/rational.c: implement Rational#**; close #5724
2022-06-21 16:53:17 +09:00
Yukihiro "Matz" Matsumoto
04de280997
mruby-rational/rational.c: wrap prototype with mrb_float
...
When `MRB_NO_FLOAT` is defined, `mrb_float` is not defined.
2022-06-21 16:37:32 +09:00
Yukihiro "Matz" Matsumoto
6f78cd6c99
mruby-rational/rational.c: remove unused prototype [ci skip]
2022-06-21 14:01:38 +09:00
Yukihiro "Matz" Matsumoto
9a34bd9971
hash.rb: update Hash class documents [ci skip]
2022-06-20 12:19:54 +09:00
Yukihiro "Matz" Matsumoto
d2a24a540c
hash.c: implement typical part of merge in C.
2022-06-19 22:28:31 +09:00
Yukihiro "Matz" Matsumoto
909e1044ed
mruby-hash-ext/hash.rb (merge!): takes multiple arguments.
2022-06-18 16:12:14 +09:00
Yukihiro "Matz" Matsumoto
0565bbf85a
test/hash.rb: test Hash#merge that takes multiple arguments.
2022-06-18 08:30:26 +09:00
Yukihiro "Matz" Matsumoto
14e5c0c7b9
hash.rb (merge): now takes multiple arguments.
2022-06-18 08:25:11 +09:00
Yukihiro "Matz" Matsumoto
7dec6e776e
mruby-random/random.c: pointer to uint32_t cast may fail with clang.
2022-06-17 10:06:07 +09:00
Yukihiro "Matz" Matsumoto
f1d669024a
mruby-random/random.c: srand to use pointer address as a seed.
...
Utilize process randomiser which may not be provided by non Linux OSes.
With those OSes, rand() would return same values if the processes are
invoked within a second.
2022-06-17 07:14:29 +09:00
Yukihiro "Matz" Matsumoto
267c26d20b
mruby-random/random.c: randomize Random::DEFAULT.
...
Using time(2) and randomized pointer address. May not work well with old
OSes without process randomiser.
2022-06-17 07:12:12 +09:00
Yukihiro "Matz" Matsumoto
0a63cdd594
mruby-random/random.c: use random: keyword argument.
...
For Array#sample and Array#shuffle. They used to take optional ordinal
argument for Random object but CRuby uses `random:` keyword argument.
Now mruby is compatible with CRuby here.
2022-06-16 11:17:22 +09:00
Yukihiro "Matz" Matsumoto
7005f8661b
parse.y (paser_pfree): recycle memory if possible.
2022-06-15 07:28:05 +09:00
Yukihiro "Matz" Matsumoto
65ff04b20d
Merge pull request #5722 from dearblue/gc_protect
...
Fixed possible inconsistency in `gc_protect()`
2022-06-15 07:27:36 +09:00
dearblue
cbeb392d7d
Fixed possible inconsistency in gc_protect()
...
If `mrb_realloc()` raises an out-of-memory exception, `arena_capa` will hold the wrong value.
2022-06-14 22:31:45 +09:00
Yukihiro "Matz" Matsumoto
561dffcccc
parse.y: fix nested here-document bug; fix #5607
...
- remove `lex_strterm_before_heredoc` that does not nest
- remove `all_heredocs` that cannot distinguish nested and followed
here-doc
- replace `lex_strterm` represented by cons list by C struct
- push/pop `lex_strterm` before/after interpolation
2022-06-13 22:25:37 +09:00
Yukihiro "Matz" Matsumoto
3cab2e7b78
mruby-compiler: remove spaces before * in type casting.
2022-06-13 17:00:30 +09:00
Yukihiro "Matz" Matsumoto
4d70d17af7
compile.h: reorder parser_heredoc_info members to reduce alignment gap.
2022-06-12 18:48:34 +09:00
Yukihiro "Matz" Matsumoto
c41f24216b
Merge pull request #5718 from dearblue/rehash-iv_mt
...
Asigns table properties after `mrb_calloc()`
2022-06-10 10:44:14 +09:00
dearblue
56c6dde9c5
Asigns table properties after mrb_calloc()
...
If GC occurs in `mrb_calloc()` called by `iv_rehash()` or `mt_rehash()`, the object as table data may be destroyed.
2022-06-08 22:10:58 +09:00
Yukihiro "Matz" Matsumoto
b1f6c856e3
parse.y (nextc0): small refactoring.
2022-06-08 21:59:51 +09:00
Yukihiro "Matz" Matsumoto
0d2c550f0f
parse.y: use info as abbreviation for information.
...
Replace `inf` that looks like abbreviation for `infinity`.
2022-06-07 18:42:53 +09:00
Yukihiro "Matz" Matsumoto
62fc021f5a
.git-blame-ignore-revs: add 650ffb9 to ignore indentation fix.
2022-06-06 08:00:43 +09:00