let test e t f = try let c = T.cond e in Why_ops.pif (c, t, f) with T.AbortTranslation msg -> (* TODO ; if tcond fails, tyr to see if t_exp and e_exp are equal *) abort ("needed untranslatable condition: "^msg)