This code looks a bit iffy... why has a `CommaExp` containing an `ErrorExp` not been reduced to an `ErrorExp`?  Why does a `STCtemp` variable not return 1 from `isLvalue`?  Can those be fixed instead, I assume they'll show up in other places.