"basically everything in Go is built on pointers: structs, slices, even fixed arrays"
As I understand it while that does apply to pointer-to-struct and slices and probably strings, that isn't true for naked structs and naked arrays. Those both behave as value types like int.