diff --git a/src/build/mod.rs b/src/build/mod.rs index 7767d07..f81cac8 100644 --- a/src/build/mod.rs +++ b/src/build/mod.rs @@ -329,11 +329,17 @@ impl<'a> FileBuilder<'a> { Some(val) => Ok(val), } } - Err(err) => Err(Box::new(error::BuildError::with_pos( - format!("{}", err,), - error::ErrorType::ParseError, - (&input).into(), - ))), + // TODO(jwall): We can probably use actual errors now? + Err(err) => { + let cause = Box::new(simple_error::SimpleError::new(err)); + Err(error::BuildError::with_pos( + "Unable to parse input", + error::ErrorType::ParseError, + (&input).into(), + ) + .wrap_cause(cause) + .to_boxed()) + } } }