Actions
Bug #10456
closedkwargs and block without comma should probably be a syntax error
Bug #10456:
kwargs and block without comma should probably be a syntax error
Status:
Rejected
Assignee:
-
Target version:
-
ruby -v:
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
Backport:
Description
I experienced something very weird, when you define a method like this:
It actually doesn't come back as a syntax error
Roberts-MacBook-Pro-2:~ robert$ cat test.rb; echo
def wat(name: "" &block)
end
Roberts-MacBook-Pro-2:~ robert$ ruby -c test.rb
Syntax OK
Within the method, the block is never assigned either actually on method call:
irb(main):007:0> def wat(something: nil &block)
irb(main):008:1> puts "Block: #{block}"
irb(main):009:1> end
=> :wat
irb(main):010:0> wat(something: 'hello') { "My block here" }
NameError: undefined local variable or method `block' for main:Object
from (irb):8:in `wat'
from (irb):10
from /Users/robert/.rbenv/versions/2.1.1/bin/irb:11:in `<main>'
This behavior seems unlikely, it caught me off guard for sure.
Updated by Anonymous almost 12 years ago
Updated by Anonymous almost 12 years ago
Updated by nobu (Nobuyoshi Nakada) almost 12 years ago
- Description updated (diff)
- Status changed from Open to Rejected
Actions