The optional keyword arguments are already cleaned by the keyword splat in BufferStack#push. They are automatically unsplatted when calling Buffer#initialize anyway.