Yukihiro "Matz" Matsumoto
ad3ce7b41c
Merge pull request #5642 from dearblue/errmesg
...
Avoid direct access to error messages as instance variables
2022-02-13 20:59:47 +09:00
Yukihiro "Matz" Matsumoto
38b164ace7
codegen.c: fix a bug in gen_values().
...
- Fix limit handling that fails 15 arguments method calls.
- Fix too early argument packing in arrays.
2022-02-12 12:39:35 +09:00
Yukihiro "Matz" Matsumoto
d912b864df
mruby-range-ext/range.c: cover? should work with begin-less ranges.
2022-02-09 13:32:20 +09:00
Yukihiro "Matz" Matsumoto
4562ba14c0
codegen.c: limit check was too restrictive in gen_values().
...
That can create unnecessary arrays when more than 12 arguments are
given to a method.
2022-02-08 13:11:43 +09:00
Yukihiro "Matz" Matsumoto
0849a2885f
codegen.c: stack position may be wrong on assignments.
...
When `[]=` access includes keyword arguments.
2022-02-08 13:11:43 +09:00
Yukihiro "Matz" Matsumoto
4c13188ea6
codegen.c: generate OP_HASH in gen_hash() if limit exceeds.
...
That means when `limit` is `0` it should always generate a hash.
2022-02-08 13:11:43 +09:00
Yukihiro "Matz" Matsumoto
6f5e74f576
codegen.c: change size_t to uint16_t To remove type conversion warnings.
2022-02-08 13:11:42 +09:00
Yukihiro "Matz" Matsumoto
6cc6d9b078
Merge pull request #5644 from dearblue/errno-nopresym
...
Support `disable_presym` for `mrbgems/mruby-errno`
2022-02-07 16:05:22 +09:00
Yukihiro "Matz" Matsumoto
8b32a1f7ae
Merge pull request #5643 from dearblue/errno-nostdio
...
Support `MRB_NO_STDIO` for `mrbgems/mruby-errno`
2022-02-07 15:43:51 +09:00
Yukihiro "Matz" Matsumoto
e24e81cd3c
mruby.c: rindex() is not supported by VC.
2022-02-06 22:44:02 +09:00
Yukihiro "Matz" Matsumoto
cf00c32e3a
mruby.c: -b option should only affects the script.
...
Not the libraries loaded by `-r`. Instead, `.mrb` extension in the path
should determine whether they are compiled binary.
2022-02-06 22:17:41 +09:00
dearblue
0a4f21c60f
Support disable_presym for mrbgems/mruby-errno
...
The `mrbgems/mruby-errno/src/known_errors_def.cstub` file has been extended, so the `mrbgems/mruby-errno/src/known_errors_e2c.cstub` file is no longer needed.
2022-02-06 18:39:46 +09:00
dearblue
a82220211d
Support MRB_NO_STDIO for mrbgems/mruby-errno
2022-02-06 16:12:41 +09:00
dearblue
d6773cbd71
Avoid direct access to error messages as instance variables
...
ref. #2485
The `SystemCallError#to_s` method also needed to be modified, but since it has no functional difference from the `Exception#to_s` method, it will be removed.
2022-02-06 15:45:13 +09:00
Yukihiro "Matz" Matsumoto
ae3c99767a
codegen.c: fixed a bug in hash code generation with !val.
2022-02-03 10:40:05 +09:00
Yukihiro "Matz" Matsumoto
f0af96c130
mruby-class-ext: add Class#subclasses method.
2022-02-01 22:37:49 +09:00
Yukihiro "Matz" Matsumoto
00f2b74ab2
kernel.c, binding.c: use MRB_SYM() instead of mrb_intern_lit().
2022-01-31 16:20:52 +09:00
Yukihiro "Matz" Matsumoto
92fb6d3526
Merge pull request #5639 from suetanvil-misc/project-mruby-errno-readme
...
Updated mruby-errno/README.md to pass the lint checks.
2022-01-31 15:45:18 +09:00
Yukihiro "Matz" Matsumoto
8252352d7b
parse.y: fix buffer overflow with tweaked mruby binary.
2022-01-31 15:42:52 +09:00
Chris Reuter
198e10473b
Updated mruby-errno/README.md to pass the lint checks.
2022-01-29 18:40:05 -05:00
Yukihiro "Matz" Matsumoto
c5bdfe1bd4
mruby-errno: add errno constants to known_errors.def.
...
Add unlisted errno constants found in macOS and FreeBSD.
If you see unlisted errno, please report.
2022-01-26 12:58:52 +09:00
Yukihiro "Matz" Matsumoto
b7cdb59f26
errno.c: stop generating Errno::Exxx error classes on the fly.
2022-01-26 12:29:19 +09:00
Yukihiro "Matz" Matsumoto
dd93dd7419
errno.c: refactor _sys_fail to avoid mrb_funcall.
2022-01-25 16:01:33 +09:00
Yukihiro "Matz" Matsumoto
9892742d27
errno.c: use C array instead of a hash table to lookup a errno class.
...
To reduce memory consumption by avoiding allocating Ruby objects.
2022-01-25 11:15:34 +09:00
Yukihiro "Matz" Matsumoto
194d0c6f46
mruby-errno: change the format of known_errors_e2c.cstub.
2022-01-25 11:08:52 +09:00
Yukihiro "Matz" Matsumoto
5c7338491c
errno.c: use mrb_fixnum_p() instead of mrb_type().
2022-01-25 10:39:13 +09:00
Yukihiro "Matz" Matsumoto
6744d69d3d
errno.c: replace string literals by MRB_SYM().
2022-01-25 10:39:13 +09:00
Yukihiro "Matz" Matsumoto
1e866dffc4
errno.c: bundled mrbgem need not to support mruby 1.x.
2022-01-25 10:28:50 +09:00
Yukihiro "Matz" Matsumoto
0f5829795e
errno.c: use MRB_SYM() instead of mrb_intern_lit().
2022-01-25 10:26:34 +09:00
Yukihiro "Matz" Matsumoto
3b5486e3ae
mruby-errno/test: update test suites not to report warnings.
2022-01-25 10:22:28 +09:00
Yukihiro "Matz" Matsumoto
3a15d18ebb
errno.c: hide internal _sys_fail from backtrace.
2022-01-24 18:14:28 +09:00
Yukihiro "Matz" Matsumoto
c8d96ed782
stdlib.gembox: add mruby-errno
2022-01-24 18:13:28 +09:00
Yukihiro "Matz" Matsumoto
a60073d7b9
mruby-errno: remove .gitkeep.
2022-01-24 18:07:59 +09:00
Yukihiro "Matz" Matsumoto
0a6d57ab3c
Merge remote-tracking branch 'mruby-errno/master'
2022-01-24 17:58:41 +09:00
Yukihiro "Matz" Matsumoto
2adf32a3f4
add mruby-errno directory
2022-01-24 16:42:36 +09:00
Yukihiro "Matz" Matsumoto
7bedd5e05d
codegen.c: generate OP_SETIDX from attribute assignments.
2022-01-24 11:18:27 +09:00
Yukihiro "Matz" Matsumoto
cda4d9bcb4
codegen.c: refactor gen_call and gen_values.
...
Remove no longer used arguments from the functions.
2022-01-22 16:40:21 +09:00
Yukihiro "Matz" Matsumoto
b611c43a5d
codegen.c: no OP_HASHADD required when val is false.
2022-01-21 15:42:51 +09:00
Yukihiro "Matz" Matsumoto
b53cd3ce25
codegen.c: fix evaluation order of attribute assignment.
2022-01-21 10:41:14 +09:00
Yukihiro "Matz" Matsumoto
f8944792be
parse.y: consistent argument pass for new_call().
2022-01-21 10:41:13 +09:00
Yukihiro "Matz" Matsumoto
ef98eb2c29
codegen.c: fix evaluation order of constant initialization.
...
`a::B = c` should evaluate `a` then `c`. It used to be `c` then `a`. The
`OP_SETMCNST` instruction operands are designed for older order in mind.
Should we changed the operand order?
2022-01-21 10:41:13 +09:00
Yukihiro "Matz" Matsumoto
475b868b72
time.c: remove duplicated UTC condition check.
2022-01-15 18:24:39 +09:00
Yukihiro "Matz" Matsumoto
171d32c007
time.c: 1969-12-31 23:59:59 is a valid time.
...
But `mktime(3)` for the date returns `-1` which happen to be the
error value.
2022-01-14 11:40:52 +09:00
Yukihiro "Matz" Matsumoto
8f09d8feb4
time.c: check year range before creating Time object.
2022-01-13 15:40:09 +09:00
Yukihiro "Matz" Matsumoto
7e7f1b2f1d
parse.y: numbered parameters should not appear on toplevel.
...
Toplevel includes the top of the method/class/module definitions.
2022-01-11 14:52:05 +09:00
Yukihiro "Matz" Matsumoto
3a30cc27da
parse.y: move numbered parameter indexing to lexer.
2022-01-11 14:49:41 +09:00
Yukihiro "Matz" Matsumoto
5dfbfb3ecd
parse.y: p->nvar (numbered argument index list) may be NULL.
2022-01-10 15:44:15 +09:00
Yukihiro "Matz" Matsumoto
696589cf27
Merge pull request #5628 from dearblue/super-kwargs
...
Fixing keyword arguments with `super`
2022-01-06 10:05:05 +09:00
Yukihiro "Matz" Matsumoto
aaa3bd0e80
mrbc.c: simplify place holder functions; #5622
2022-01-05 19:39:39 +09:00
Yukihiro "Matz" Matsumoto
c088af87b8
object.c: Call functions directly from mrb_ensure_int_type(); #5622
2022-01-05 19:00:14 +09:00