goprotobuf: hand-edit the gofix changes for nicer code
and clean up a few details.  No semantic change.

R=rsc, dsymonds
CC=golang-dev
http://codereview.appspot.com/4368069
diff --git a/proto/encode.go b/proto/encode.go
index 62674d1..8dc6a74 100644
--- a/proto/encode.go
+++ b/proto/encode.go
@@ -292,7 +292,7 @@
 // All protocol buffer fields are nillable, but be careful.
 func isNil(v reflect.Value) bool {
 	switch v.Kind() {
-	case reflect.Chan, reflect.Func, reflect.Interface, reflect.Map, reflect.Ptr, reflect.Slice:
+	case reflect.Map, reflect.Ptr, reflect.Slice:
 		return v.IsNil()
 	}
 	return false
diff --git a/proto/properties.go b/proto/properties.go
index b347efc..bc0101c 100644
--- a/proto/properties.go
+++ b/proto/properties.go
@@ -238,7 +238,6 @@
 	case reflect.Ptr:
 		switch t2 := t1.Elem(); t2.Kind() {
 		default:
-		BadType:
 			fmt.Fprintf(os.Stderr, "proto: no encoder function for %T -> %T\n", t1, t2)
 			break
 		case reflect.Bool:
@@ -246,36 +245,26 @@
 			p.dec = (*Buffer).dec_bool
 			p.alignof = unsafe.Alignof(vbool)
 			p.sizeof = unsafe.Sizeof(vbool)
-		case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
-			switch t2.Bits() {
-			case 32:
-				p.enc = (*Buffer).enc_int32
-				p.dec = (*Buffer).dec_int32
-				p.alignof = unsafe.Alignof(vint32)
-				p.sizeof = unsafe.Sizeof(vint32)
-			case 64:
-				p.enc = (*Buffer).enc_int64
-				p.dec = (*Buffer).dec_int64
-				p.alignof = unsafe.Alignof(vint64)
-				p.sizeof = unsafe.Sizeof(vint64)
-			default:
-				goto BadType
-			}
-		case reflect.Float32, reflect.Float64:
-			switch t2.Bits() {
-			case 32:
-				p.enc = (*Buffer).enc_int32 // can just treat them as bits
-				p.dec = (*Buffer).dec_int32
-				p.alignof = unsafe.Alignof(vfloat32)
-				p.sizeof = unsafe.Sizeof(vfloat32)
-			case 64:
-				p.enc = (*Buffer).enc_int64 // can just treat them as bits
-				p.dec = (*Buffer).dec_int64
-				p.alignof = unsafe.Alignof(vfloat64)
-				p.sizeof = unsafe.Sizeof(vfloat64)
-			default:
-				goto BadType
-			}
+		case reflect.Int32, reflect.Uint32:
+			p.enc = (*Buffer).enc_int32
+			p.dec = (*Buffer).dec_int32
+			p.alignof = unsafe.Alignof(vint32)
+			p.sizeof = unsafe.Sizeof(vint32)
+		case reflect.Int64, reflect.Uint64:
+			p.enc = (*Buffer).enc_int64
+			p.dec = (*Buffer).dec_int64
+			p.alignof = unsafe.Alignof(vint64)
+			p.sizeof = unsafe.Sizeof(vint64)
+		case reflect.Float32:
+			p.enc = (*Buffer).enc_int32 // can just treat them as bits
+			p.dec = (*Buffer).dec_int32
+			p.alignof = unsafe.Alignof(vfloat32)
+			p.sizeof = unsafe.Sizeof(vfloat32)
+		case reflect.Float64:
+			p.enc = (*Buffer).enc_int64 // can just treat them as bits
+			p.dec = (*Buffer).dec_int64
+			p.alignof = unsafe.Alignof(vfloat64)
+			p.sizeof = unsafe.Sizeof(vfloat64)
 		case reflect.String:
 			p.enc = (*Buffer).enc_string
 			p.dec = (*Buffer).dec_string
diff --git a/proto/text.go b/proto/text.go
index fac3c2d..e26bbc2 100644
--- a/proto/text.go
+++ b/proto/text.go
@@ -99,13 +99,13 @@
 		}
 		props := sprops.Prop[i]
 		fv := sv.Field(i)
-		if pv := fv; pv.Kind() == reflect.Ptr && pv.IsNil() {
+		if fv.Kind() == reflect.Ptr && fv.IsNil() {
 			// Field not filled in. This could be an optional field or
 			// a required field that wasn't filled in. Either way, there
 			// isn't anything we can show for it.
 			continue
 		}
-		if av := fv; av.Kind() == reflect.Slice && av.IsNil() {
+		if fv.Kind() == reflect.Slice && fv.IsNil() {
 			// Repeated field that is empty, or a bytes field that is unused.
 			continue
 		}
diff --git a/proto/text_parser.go b/proto/text_parser.go
index adddb72..018d787 100644
--- a/proto/text_parser.go
+++ b/proto/text_parser.go
@@ -386,7 +386,7 @@
 			fv.SetFloat(f)
 			return nil
 		}
-	case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
+	case reflect.Int32, reflect.Int64:
 		switch fv.Type().Bits() {
 		case 32:
 			if x, err := strconv.Atoi64(tok.value); err == nil && minInt32 <= x && x <= maxInt32 {
@@ -433,7 +433,7 @@
 			return p.error("expected '{' or '<', found %q", tok.value)
 		}
 		return p.readStruct(fv, terminator)
-	case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
+	case reflect.Uint32, reflect.Uint64:
 		switch fv.Type().Bits() {
 		case 32:
 			if x, err := strconv.Atoui64(tok.value); err == nil && x <= maxUint32 {