俺が想定してたのはこういう動作

foo({}, {:a => 10, :b => 20})

ただまぁ、>>778を見ると納得はできる