1
2
3
4
5 package ir
6
7 import (
8 "reflect"
9 "testing"
10 "unsafe"
11 )
12
13
14
15 func TestSizeof(t *testing.T) {
16 const _64bit = unsafe.Sizeof(uintptr(0)) == 8
17
18 var tests = []struct {
19 val interface{}
20 _32bit uintptr
21 _64bit uintptr
22 }{
23 {Func{}, 196, 336},
24 {Name{}, 112, 200},
25 }
26
27 for _, tt := range tests {
28 want := tt._32bit
29 if _64bit {
30 want = tt._64bit
31 }
32 got := reflect.TypeOf(tt.val).Size()
33 if want != got {
34 t.Errorf("unsafe.Sizeof(%T) = %d, want %d", tt.val, got, want)
35 }
36 }
37 }
38
View as plain text