package a

type PointerGood struct {
	P   *int
	buf [1000]uintptr
}

type PointerBad struct {
	P   *int
	buf [1000]uintptr
}

type PointerSorta struct {
	a struct {
		p *int
		q uintptr
	}
	b struct {
		p *int
		q [2]uintptr
	}
}

type PointerSortaBad struct {
	b struct {
		p *int
		q uintptr
	}
	a struct {
		p *int
		q [2]uintptr
	}
}

type MultiField struct {
	_  [0]func()
	i1 int
	i2 int
	a3 [3]bool
	b  bool
}

type Issue43233 struct {
	APIVersion    string `mapstructure:"api_version"`
	BaseURL       string `mapstructure:"base_url"`
	AccessToken   string `mapstructure:"access_token"`
	AllowedEvents []*string
	BlockedEvents []*string
}
