Actions
Bug #11389
closedRegression in method parameter parsing
    Bug #11389:
    Regression in method parameter parsing
  
Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.3.0dev (2015-07-22 trunk 51345) [x86_64-darwin15]
Backport:
Description
There is a regression in parameter parsing with current ruby-2.2-head and ruby-head:
# ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]
def foo fn, options, █ end
=> :foo
foo -> {}, foo: :bar do; end
=> nil
# ruby 2.2.2p133 (2015-06-12 revision 50295) [x86_64-darwin15]
# ruby 2.3.0dev (2015-07-22 trunk 51345) [x86_64-darwin15]
def foo fn, options, █ end
=> :foo
foo -> {}, foo: :bar do; end
SyntaxError: unexpected keyword_do, expecting end-of-input
# workaround:
foo -> {}, { foo: :bar } do; end
=> nil
  
        
          
          Updated by felixbuenemann (Felix Bünemann) over 10 years ago
          
          
        
        
      
      - Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN to 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: REQUIRED
 
The issue can be fixed by reverting r50402 which was introduced by #11107.
        
          
          Updated by felixbuenemann (Felix Bünemann) over 10 years ago
          
          
        
        
      
      This bug is a duplicate of #11380.
        
          
          Updated by nobu (Nobuyoshi Nakada) over 10 years ago
          
          
        
        
      
      - Is duplicate of Bug #11380: Parser regression in 2.3? added
 
        
          
          Updated by nobu (Nobuyoshi Nakada) over 10 years ago
          
          
        
        
      
      - Status changed from Open to Closed
 
Applied in changeset r51350.
parse.y: pop cmdarg
- parse.y (lambda_body): pop cmdarg stack for lookahead
token. [ruby-core:70067] [Bug #11380] 
        
          
          Updated by felixbuenemann (Felix Bünemann) over 10 years ago
          
          
        
        
      
      Thank you, it works fine now! <3
        
          
          Updated by nagachika (Tomoyuki Chikanaga) about 10 years ago
          
          
        
        
      
      - Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: REQUIRED to 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: DONE
 
r51350 was backported into ruby_2_2 branch at r51519.
        
          
          Updated by usa (Usaku NAKAMURA) about 10 years ago
          
          
        
        
      
      - Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: DONE to 2.0.0: UNKNOWN, 2.1: DONE, 2.2: DONE
 
Actions