trim environments again

this is only important in the case of if, as call just throws the
current environtment away (except maybe for some weird primitive?)