Bug #15535

Updated by waheedi (Waheed Barghouthi) over 3 years ago

The below definition throws a Syntax syntax Error, while it there is no syntax error and I'm not sure what is the intention behind the Syntax Error error 

 ``` ruby 
 def `def hello(foo="bar", bar, yanko="me") 
   p "Hello" yanko="me")` 
 end `p "Hello"` 
 ``` `end` 

 The same definition below with a tiny modification in the argument set, give a Syntax OK. 

 ``` ruby 
 def `def hello(foo="bar", bar="foo", yanko="me") 
   p "Hello" yanko="me")` 
 end `p "Hello"` 


 It seems when there is a required argument in the definition that happens to be in between optional arguments that triggers a Syntax Error, I think the ArgumentError is more related to it.  

 This has been tested on mostly every ruby version after 1.8.7 and it gave the same result.