This patch refactors transformExpr(): rather than being a monsterous 900
line function, it breaks it up into numerous sub-functions that are
invoked by transformExpr() for individual expression types, in the style
of transformStmt().
I think this patch is reasonably safe for HEAD (it mostly just
rearranges code), but I don't mind holding on to it for 8.1. Comments?
-Neil