message: Delete the From Anyhow::Error to Diagnostic case
  Summary: Was never used other than one internal method, so make it clear. At the same time, avoid duplicating construction logic.
diff: @@ -59,16 +59,6 @@ impl Display for Frame {
  }
  }
  -impl From<anyhow::Error> for Diagnostic {
  - fn from(e: anyhow::Error) -> Self {
  - Diagnostic {
  - message: e,
  - span: None,
  - call_stack: Vec::new(),
  - }
  - }
  -}
  -
  impl Error for Diagnostic {
  fn source(&self) -> Option<&(dyn Error + 'static)> {
  Some(&*self.message)
  @@ -81,18 +71,17 @@ impl Error for Diagnostic {
  impl Diagnostic {
  pub fn new(msg: impl Into<String>) -> Self {
  + Self::anyhow(anyhow!(msg.into()))
  + }
  +
  + pub fn anyhow(msg: impl Into<anyhow::Error>) -> Self {
  Self {
  - message: anyhow!(msg.into()),
  + message: msg.into(),
  span: None,
  call_stack: Vec::new(),
  }
  }
  - pub fn anyhow(msg: impl Into<anyhow::Error>) -> Self {
  - let x: anyhow::Error = msg.into();
  - x.into()
  - }
  -
  pub fn set_span(&mut self, span: Span, codemap: Arc<CodeMap>) {
  if self.span.is_none() {
  // We want the best span, which is likely the first person to set it
  