const Doc … var Analyzer … func run(pass *analysis.Pass) (interface{ … } var unsafePointerTyp … func fieldalignment(pass *analysis.Pass, node *ast.StructType, typ *types.Struct) { … } func optimalOrder(str *types.Struct, sizes *gcSizes) (*types.Struct, []int) { … } type gcSizes … func (s *gcSizes) Alignof(T types.Type) int64 { … } var basicSizes … func (s *gcSizes) Sizeof(T types.Type) int64 { … } // align returns the smallest y >= x such that y % a == 0. func align(x, a int64) int64 { … } func (s *gcSizes) ptrdata(T types.Type) int64 { … }