// skip // Copyright 2012 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Issue 4348. After switch to 64-bit ints the compiler generates // illegal instructions when using large array bounds or indexes. // Skip. We reject symbols larger that 2GB (Issue #9862). package main // 1<<32 on a 64-bit machine, 1 otherwise. const LARGE = ^uint(0)>>32 + 1 func A() int { var a []int return a[LARGE] } var b [LARGE]int func B(i int) int { return b[i] } func main() { n := A() B(n) }