message: Don't allow subtracting two Pos from each other
  Summary: This was a somewhat dubious operation - the number of things you could do with it was quite limited. No one outside the CodeMap module used it, so delete it.
diff: @@ -40,7 +40,7 @@ use std::{
  cmp,
  fmt::{self, Display},
  hash::Hash,
  - ops::{Add, Deref, Sub},
  + ops::{Add, Deref},
  sync::Arc,
  };
  @@ -57,13 +57,6 @@ impl Add<u32> for Pos {
  }
  }
  -impl Sub<Pos> for Pos {
  - type Output = u32;
  - fn sub(self, other: Pos) -> u32 {
  - self.0 - other.0
  - }
  -}
  -
  /// A range of text within a CodeMap.
  #[derive(Copy, Dupe, Clone, Hash, Eq, PartialEq, Debug, Default)]
  pub struct Span {
  @@ -106,7 +99,7 @@ impl Span {
  /// The length in bytes of the text of the span
  pub fn len(self) -> u32 {
  - self.high - self.low
  + self.high.0 - self.low.0
  }
  /// Create a span that encloses both `self` and `other`.
  @@ -241,7 +234,7 @@ impl CodeMap {
  pub fn find_line_col(&self, pos: Pos) -> LineCol {
  let line = self.find_line(pos);
  let line_span = self.line_span(line);
  - let byte_col = pos - line_span.low;
  + let byte_col = pos.0 - line_span.low.0;
  let column = self.source_slice(line_span)[..byte_col as usize]
  .chars()
  .count();
  