// Package blank is a go/doc test for the handling of _. See issue ...
PACKAGE blank

IMPORTPATH
	testdata/blank

FILENAMES
	testdata/blank.go

CONSTANTS
	// Package constants. 
	const (
		_	int	= iota
		I1
		I2
	)


TYPES
	// S has a padding field. 
	type S struct {
		H	uint32
	
		A	uint8
		// contains filtered or unexported fields
	}

	// 
	type T int

	// T constants. 
	const (
		_	T	= iota
		T1
		T2
	)

