fix(tvix/eval): propagate catchables through builtins.splitVersion

This fixes our implementation of builtins.splitVersion so it
propagates catchables like cppnix does.

Change-Id: Id5d83ea76229f8c8f202aa42353cb609e67de43f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/10305
Autosubmit: Adam Joseph <adam@westernsemico.com>
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This commit is contained in:
Adam Joseph 2023-12-12 03:01:58 -08:00 committed by clbot
parent 012b44244b
commit 29464fc65b
3 changed files with 5 additions and 0 deletions

View file

@ -931,6 +931,9 @@ mod pure_builtins {
#[builtin("splitVersion")]
async fn builtin_split_version(co: GenCo, s: Value) -> Result<Value, ErrorKind> {
if s.is_catchable() {
return Ok(s);
}
let s = s.to_str()?;
let s = VersionPartsIter::new(s.as_str());

View file

@ -0,0 +1 @@
(builtins.tryEval (builtins.splitVersion (throw "fred"))).success