use VARIANT_PASS_ON when evaluating body of closure, though it's hard to come up with an example where not causes problems