Wait, does this mean `typeof(x)` will be different in different contexts?  Shouldn't `typeof` be opaque for type deduction?