preserve location for desugared if predicate, since it's needed to use forceBooleanContext