diff --git a/library/src/compute/foundations.rs b/library/src/compute/foundations.rs index b181dff72..a5d0586bf 100644 --- a/library/src/compute/foundations.rs +++ b/library/src/compute/foundations.rs @@ -80,8 +80,13 @@ pub fn repr(args: &mut Args) -> SourceResult { #[func] pub fn assert(args: &mut Args) -> SourceResult { let Spanned { v, span } = args.expect::>("condition")?; + let message = args.named::("message")?; if !v { - bail!(span, "assertion failed"); + if let Some(message) = message { + bail!(span, "assertion failed: {}", message); + } else { + bail!(span, "assertion failed"); + } } Ok(Value::None) }