diff options
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/limitations.md | 21 | ||||
| -rw-r--r-- | doc/mruby3.md | 4 | ||||
| -rw-r--r-- | doc/opcode.md | 3 |
3 files changed, 0 insertions, 28 deletions
diff --git a/doc/limitations.md b/doc/limitations.md index 265e4a2d4..b0caecc8f 100644 --- a/doc/limitations.md +++ b/doc/limitations.md @@ -219,27 +219,6 @@ trace (most recent call last): -e:1: undefined method 'binding' (NoMethodError) ``` -## Keyword arguments - -mruby keyword arguments behave slightly different from CRuby 2.5 -to make the behavior simpler and less confusing. - -#### Ruby [ruby 2.5.1p57 (2018-03-29 revision 63029)] - -``` -$ ruby -e 'def m(*r,**k) p [r,k] end; m("a"=>1,:b=>2)' -[[{"a"=>1}], {:b=>2}] -``` - -#### mruby [3.0.0 (2021-03-05)] - -``` -$ ./bin/mruby -e 'def m(*r,**k) p [r,k] end; m("a"=>1,:b=>2)' -trace (most recent call last): - [0] -e:1 --e:1: keyword argument hash with non symbol keys (ArgumentError) -``` - ## `nil?` redefinition in conditional expressions Redefinition of `nil?` is ignored in conditional expressions. diff --git a/doc/mruby3.md b/doc/mruby3.md index a64e3c73e..e5478c426 100644 --- a/doc/mruby3.md +++ b/doc/mruby3.md @@ -124,10 +124,6 @@ Renamed from `OP_RAISE` * `OP_RAISEIF` -Instruction that is reserved for the future keyword argument support. - -* OP_SENDVK - ## Removed Instructions Instructions for old exception handling diff --git a/doc/opcode.md b/doc/opcode.md index 953e9aeae..113e390e8 100644 --- a/doc/opcode.md +++ b/doc/opcode.md @@ -67,11 +67,8 @@ sign) of operands. | `OP_EXCEPT` | `B` | `R(a) = exc` | | `OP_RESCUE` | `BB` | `R(b) = R(a).isa?(R(b))` | | `OP_RAISEIF` | `B` | `raise(R(a)) if R(a)` | -| `OP_SENDV` | `BB` | `R(a) = call(R(a),Syms(b),*R(a+1))` | -| `OP_SENDVB` | `BB` | `R(a) = call(R(a),Syms(b),*R(a+1),&R(a+2))` | | `OP_SEND` | `BBB` | `R(a) = call(R(a),Syms(b),R(a+1),...,R(a+c))` | | `OP_SENDB` | `BBB` | `R(a) = call(R(a),Syms(b),R(a+1),...,R(a+c),&R(a+c+1))` | -| `OP_SENDVK` | `BB` | `R(a) = call(R(a),Syms(b),*R(a+1),**(a+2),&R(a+3))` | | `OP_CALL` | `-` | `R(0) = self.call(frame.argc, frame.argv)` | | `OP_SUPER` | `BB` | `R(a) = super(R(a+1),... ,R(a+b+1))` | | `OP_ARGARY` | `BS` | `R(a) = argument array (16=m5:r1:m5:d1:lv4)` | |
