It looks like you are trying to use Reflection to ensure machine portability. If that is the case there is a better tool you can use.
go build
can handle conditional file inclusion for a build based on arch and os.
So create some files for each arch and os combination you support. At the top of each file add some build constraints.
// +build linux,386
for instance will cause the go command to only use this file on linux machines with a 386 arch.
Then in that file add a type alias for the type that fits that arch: type Ino uint64
Finally create your map as a map[Ino]ino_entry
.
Wala! machine portability using type aliasing and conditional file inclusion for go.
You can read more about go's build constraints here: http://golang.org/pkg/go/build/