// errorcheck

// Copyright 2010 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.

package main

var a [10]int      // ok
var b [1e1]int     // ok
var c [1.5]int     // ERROR "truncated"
var d ["abc"]int   // ERROR "invalid array bound|not numeric"
var e [nil]int     // ERROR "invalid array bound|not numeric"
var f [e]int       // ERROR "invalid array bound|not constant"
var g [1 << 65]int // ERROR "array bound is too large|overflows"
var h [len(a)]int  // ok

func ff() string

var i [len([1]string{ff()})]int // ERROR "non-constant array bound|not constant"
