Less temporary variables in desugaring

I think this change is in the wrong commit.