cmd/gc: check for array bounds overflow in slice expression
cmd/gc: check for array bounds overflow in slice expression

The test for this is test/index.go, which is not run by
default.  That test does not currently pass even after this is
applied, due to issue 4348.

Fixes issue 4344.

R=golang-dev, daniel.morsing, rsc
CC=golang-dev
http://codereview.appspot.com/6815085

h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang