Project

General

Profile

Bug #11663

Updated by nobu (Nobuyoshi Nakada) over 8 years ago

When loading a method with an invalid keyword (such as one that ends in a question mark), a syntax error occurs as is expected. However, when loading a method with multiple keywords, if the first keyword is invalid then a segmentation fault occurs. 

 ```ruby ``` 
 def foo(arg1?:) end           #=> syntax error 
 def foo(arg1?:, arg2) end     #=> syntax error (tIDENTIFIER as expected) 
 def foo(arg1:) end            #=> no syntax error 
 def foo(arg1:, arg2?:) end    #=> syntax error 
 def foo(arg1, arg2?:) end     #=> syntax error 

 def foo(arg1?:, arg2:) end    #=> segfault 
 def foo(arg1?:, arg2?:) end #=> segfault 
 ```

Back