func visitChangeType(inst *ssa.ChangeType, fr *frame) { switch vd, kind := fr.get(inst.X); kind { case Chan: fr.locals[inst] = vd // ChangeType from <-chan and chan<- ch := fr.env.chans[vd] fmt.Fprintf(os.Stderr, " & changetype from %s to %s (channel %s)\n", green(reg(inst.X)), reg(inst), ch.Name()) fmt.Fprintf(os.Stderr, " ^ origin\n") case Nothing: fmt.Fprintf(os.Stderr, " # changetype %s = %s %s\n", inst.Name(), inst.X.Name(), inst.String()) fmt.Fprintf(os.Stderr, " ^ unknown kind\n") default: fr.locals[inst] = vd fmt.Fprintf(os.Stderr, " # changetype %s = %s\n", red(inst.Name()), inst.String()) } }