| // 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) |
| } |