refactor Semantic.AST, remove block structure, collect local vars info
cpsVarRef detects by type (array/pointer)