diff --git a/src/cmd/compile/internal/gc/ssa.go b/src/cmd/compile/internal/gc/ssa.go index b016bb1838..3ad21a6193 100644 --- a/src/cmd/compile/internal/gc/ssa.go +++ b/src/cmd/compile/internal/gc/ssa.go @@ -719,6 +719,10 @@ func (s *state) addr(n *Node) *ssa.Value { s.boundsCheck(i, len) return s.newValue2(ssa.OpPtrIndex, Ptrto(n.Left.Type.Type), a, i) } + case OIND: + p := s.expr(n.Left) + s.nilCheck(p) + return p case ODOT: p := s.addr(n.Left) return s.newValue2(ssa.OpAdd, p.Type, p, s.constInt(s.config.Uintptr, n.Xoffset))