Because iota is incremented after each ConstSpec, values within the same expression list will have the same value for iota:
const (
    bit0, mask0 = 1 << iota, 1<<iota - 1  // bit0 == 1, mask0 == 0
    bit1, mask1                           // bit1 == 2, mask1 == 1
    _, _                                  // skips iota == 2
    bit3, mask3                           // bit3 == 8, mask3 == 7
)
This example was taken from the Go Spec (CC-BY 3.0).