updated some of the semantics of variables declared with a type