public override void VisitAssign(Assign n) { InternalType declFieldType; if (n.Expr != null) { declFieldType = CheckSubTree(n.Expr); } else if (n.Statement != null) { declFieldType = CheckSubTree(n.Expr); } else { declFieldType = CheckSubTree(n.Qualifier); } n.InternalType = declFieldType; var desc = _mgr.AddMember(n.LValue.Id, declFieldType, _currentClass); n.Descriptor = desc; }