github.com/llvm-mirror/llgo@v0.0.0-20190322182713-bf6f0a60fce1/test/execution/interfaces/comparei2i.go (about)

     1  // RUN: llgo -o %t %s
     2  // RUN: %t 2>&1 | FileCheck %s
     3  
     4  // CHECK: true
     5  // CHECK-NEXT: true
     6  
     7  package main
     8  
     9  import "unsafe"
    10  
    11  type I interface {
    12  	X()
    13  }
    14  
    15  type T int
    16  
    17  func (t T) X() {
    18  }
    19  
    20  func main() {
    21  	var highbit uint32 = 1 << 31
    22  	var pos0 float32 = 0
    23  	var neg0 float32 = *(*float32)(unsafe.Pointer(&highbit))
    24  	var i1 interface{} = pos0
    25  	var i2 interface{} = neg0
    26  	println(i1 == i2)
    27  	var i3 interface{} = T(123)
    28  	var i4 I = T(123)
    29  	println(i3 == i4)
    30  }