diff options
| author | Jemma Issroff <jemmaissroff@gmail.com> | 2023-10-23 11:24:35 -0300 |
|---|---|---|
| committer | Jemma Issroff <jemmaissroff@gmail.com> | 2023-10-25 13:02:44 -0300 |
| commit | fe0827013b8bfda45419f375e817b2259e2c8b8f (patch) | |
| tree | 43b4df9728194224a75ceed309aff31ad8c422d9 | |
| parent | 4f1adb010740803035cfed94bb29431ddc204319 (diff) | |
[PRISM] Implement NoKeywordsParameterNode
| -rw-r--r-- | prism_compile.c | 2 | ||||
| -rw-r--r-- | test/ruby/test_compile_prism.rb | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/prism_compile.c b/prism_compile.c index d9432a0a51..3ed120de48 100644 --- a/prism_compile.c +++ b/prism_compile.c @@ -2193,6 +2193,8 @@ pm_compile_node(rb_iseq_t *iseq, const pm_node_t *node, LINK_ANCHOR *const ret, case PM_NIL_NODE: PM_PUTNIL_UNLESS_POPPED return; + case PM_NO_KEYWORDS_PARAMETER_NODE: + return; case PM_NUMBERED_REFERENCE_READ_NODE: { if (!popped) { uint32_t reference_number = ((pm_numbered_reference_read_node_t *)node)->number; diff --git a/test/ruby/test_compile_prism.rb b/test/ruby/test_compile_prism.rb index acda2f5d49..ad5994f2c1 100644 --- a/test/ruby/test_compile_prism.rb +++ b/test/ruby/test_compile_prism.rb @@ -619,6 +619,11 @@ module Prism test_prism_eval("[1].map { |a; b| b = 2; a + b}") end + def test_NoKeywordsParameterNode + test_prism_eval("def prism_test_no_keywords(**nil); end") + test_prism_eval("def prism_test_no_keywords(a, b = 2, **nil); end") + end + def test_OptionalParameterNode test_prism_eval("def prism_test_optional_param_node(bar = nil); end") end |
