[#99868] [Ruby master Bug#17144] Tempfile.open { ... } does not unlink the file — eregontp@...
Issue #17144 has been reported by Eregon (Benoit Daloze).
15 messages
2020/09/03
[ruby-core:99996] [Ruby master Bug#17167] Nested numbered parameters are not allowed
From:
sawadatsuyoshi@...
Date:
2020-09-12 15:20:29 UTC
List:
ruby-core #99996
Issue #17167 has been reported by sawa (Tsuyoshi Sawada).
----------------------------------------
Bug #17167: Nested numbered parameters are not allowed
https://bugs.ruby-lang.org/issues/17167
* Author: sawa (Tsuyoshi Sawada)
* Status: Open
* Priority: Normal
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
Numbered parameter is allowed in an ordinary block:
```ruby
[[1, 2], [3, 4]].each{p _1}
# >> [1, 2]
# >> [3, 4]
```
as well as in a nested block:
```ruby
[[1, 2], [3, 4]].each{|a| a.each{p _1}}
# >> 1
# >> 2
# >> 3
# >> 4
```
but not in both at the same time:
```ruby
[[1, 2], [3, 4]].each{_1.each{p _1}}
# >> SyntaxError ((irb):2: numbered parameter is already used in) outer block here
# >> [[1, 2], [3, 4]].each{_1.each{p _1}}
^~
```
I feel that this should be a bug.
Note that an error is not raised when an ordinary block parameter with the same name is used in the outer and the inner blocks:
```ruby
[[1, 2], [3, 4]].each{|v| v.each{|v| p v}}
# >> 1
# >> 2
# >> 3
# >> 4
```
If this is not a bug, the specification of numbered parameters is too complex. How am I supposed to use numbered parameters in such use case as above?
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>