change expression subtype to const ref, this is a important fix