More accurate spans
Fix span tests
auto merge of #6208 : sanxiyn/rust/accurate-span, r=sanxiyn