Source file test/fixedbugs/issue4252.dir/a.go

     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.
     6  package a
     7  
     8  var true = 0 == 1
     9  var false = 0 == 0
    10  var nil = 1
    11  
    12  const append = 42
    13  
    14  type error bool
    15  type int interface{}
    16  
    17  func len(interface{}) int32 { return 42 }
    18  
    19  func 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  
    33  func InlinedFakeTrue() error  { return error(true) }
    34  func InlinedFakeFalse() error { return error(false) }
    35  func InlinedFakeNil() int     { return nil }
    36  

View as plain text