github / github/codeql

Ruby parser errors on certain lambdas

未关闭
#9,313 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
acknowledged question Ruby
主要语言
CodeQL
星标
10.1k
派生
2.1k
平均合并
2 天 15 小时
30 天内合并 PR
141

描述

**Description of the issue**

I am seeing parser errors on Ruby lambdas. Here is a test case:

```
$ cat ruby-parser-errors.rb
def foo
puts "hi from foo"
end

foo() { boo( & lambda {}) }
foo() { boo( & ->{}) }
$
$ ruby -v
ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x86_64-linux-gnu]
$
$ ruby ruby-parser-errors.rb
hi from foo
hi from foo
$
$ ruby -c ruby-parser-errors.rb
Syntax OK
$
$ codeql database create test-db --language=ruby --overwrite
...
[2022-05-24 20:40:17] [build-stdout] ERROR ruby-parser-errors.rb:5: parse error
[2022-05-24 20:40:17] [build-stdout] ERROR ruby-parser-errors.rb:6: parse error: expecting 'identifier'
[2022-05-24 20:40:17] [build-stdout] ERROR ruby-parser-errors.rb:6: missing value for field: binary::left
Finalizing database at .../test-db.
Successfully created database at .../test-db.
```

Please let me know if you need further information - Thank you

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。