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

     1  // RUN: llgo -o %t %s
     2  // RUN: %t 2>&1 | FileCheck %s
     3  
     4  // CHECK: 24
     5  // CHECK-NEXT: 16
     6  // CHECK-NEXT: 0
     7  
     8  package main
     9  
    10  import "unsafe"
    11  
    12  func f1() {
    13  	type T struct {
    14  		a, b, c int
    15  	}
    16  	var t T
    17  	println(unsafe.Sizeof(t))
    18  }
    19  
    20  func f2() {
    21  	type T interface{}
    22  	var t T
    23  	t = 1
    24  	println(unsafe.Sizeof(t))
    25  }
    26  
    27  func f3() {
    28  	type T struct{}
    29  	var t T
    30  	println(unsafe.Sizeof(t))
    31  }
    32  
    33  func main() {
    34  	f1()
    35  	f2()
    36  	f3()
    37  }