# File lib/ruby_parser_extras.rb, line 220
  def block_append(head, tail, strip_tail_block=false)
    return head unless tail
    return tail unless head

    case head[0]
    when :lit, :str then
      return tail
    end

    line = [head.line, tail.line].compact.min

    head = remove_begin(head)
    head = s(:block, head) unless head[0] == :block

    if strip_tail_block and Sexp === tail and tail[0] == :block then
      head.push(*tail.values)
    else
      head << tail
    end

    head.line = line
    head
  end