Method: Parser::Ruby34#_reduce_291

Defined in:
lib/parser/ruby34.rb

#_reduce_291(val, _values, result) ⇒ Object


9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
# File 'lib/parser/ruby34.rb', line 9903

def _reduce_291(val, _values, result)
                      if !@static_env.declared_anonymous_blockarg?
                        diagnostic :error, :no_anonymous_blockarg, nil, val[0]
                      end

                      if @context.in_dynamic_block? && context.in_def &&
                        @static_env.declared_anonymous_blockarg_in_current_scpe? && @static_env.parent_has_anonymous_blockarg?
                        diagnostic :error, :ambiguous_anonymous_blockarg, nil, val[0]
                      end

                      result = @builder.block_pass(val[0], nil)

    result
end