1// Copyright 2012 The Go Authors.  All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// A package that redeclares common builtin names.
6package a
7
8var true = 0 == 1
9var false = 0 == 0
10var nil = 1
11
12const append = 42
13
14type error bool
15type int interface{}
16
17func len(interface{}) int32 { return 42 }
18
19func Test() {
20	var array [append]int
21	if true {
22		panic("unexpected builtin true instead of redeclared one")
23	}
24	if !false {
25		panic("unexpected builtin false instead of redeclared one")
26	}
27	if len(array) != 42 {
28		println(len(array))
29		panic("unexpected call of builtin len")
30	}
31}
32
33func InlinedFakeTrue() error  { return error(true) }
34func InlinedFakeFalse() error { return error(false) }
35func InlinedFakeNil() int     { return nil }
36