test: document ken/*.go

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5694065
diff --git a/test/ken/array.go b/test/ken/array.go
index 53f6fc8..9412e35 100644
--- a/test/ken/array.go
+++ b/test/ken/array.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test arrays and slices.
+
 package main
 
 func setpd(a []int) {
diff --git a/test/ken/chan.go b/test/ken/chan.go
index 3bfa5b2..36b18f8 100644
--- a/test/ken/chan.go
+++ b/test/ken/chan.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test communication operations including select.
+
 package main
 
 import "os"
diff --git a/test/ken/chan1.go b/test/ken/chan1.go
index ccb2619..798b058 100644
--- a/test/ken/chan1.go
+++ b/test/ken/chan1.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test communication with multiple simultanous goroutines.
+
 package main
 
 import "runtime"
diff --git a/test/ken/complit.go b/test/ken/complit.go
index cab3bca..bc50bbe 100644
--- a/test/ken/complit.go
+++ b/test/ken/complit.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test composite literals.
+
 package main
 
 type	M	map[int]int
diff --git a/test/ken/convert.go b/test/ken/convert.go
index 83e573a..33acbd8 100644
--- a/test/ken/convert.go
+++ b/test/ken/convert.go
@@ -4,7 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// near-exhaustive test of converting numbers between types.
+// Test, near-exhaustive, of converting numbers between types.
+// No complex numbers though.
 
 package main
 
diff --git a/test/ken/cplx0.go b/test/ken/cplx0.go
index 912b8c4..665e52a 100644
--- a/test/ken/cplx0.go
+++ b/test/ken/cplx0.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test trivial, bootstrap-level complex numbers, including printing.
+
 package main
 
 const (
diff --git a/test/ken/cplx1.go b/test/ken/cplx1.go
index 9421c53..78240a5 100644
--- a/test/ken/cplx1.go
+++ b/test/ken/cplx1.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple arithmetic and assignment for complex numbers.
+
 package main
 
 const (
diff --git a/test/ken/cplx2.go b/test/ken/cplx2.go
index a3c1570..eb1da7b 100644
--- a/test/ken/cplx2.go
+++ b/test/ken/cplx2.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test arithmetic on complex numbers, including multiplication and division.
+
 package main
 
 const (
diff --git a/test/ken/cplx3.go b/test/ken/cplx3.go
index 0923549..be0b864 100644
--- a/test/ken/cplx3.go
+++ b/test/ken/cplx3.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test composition, decomposition, and reflection on complex numbers.
+
 package main
 
 import "unsafe"
diff --git a/test/ken/cplx4.go b/test/ken/cplx4.go
index 8104ff1..97d5d16 100644
--- a/test/ken/cplx4.go
+++ b/test/ken/cplx4.go
@@ -4,6 +4,9 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test complex numbers,including fmt support.
+// Used to crash.
+
 package main
 
 import "fmt"
diff --git a/test/ken/cplx5.go b/test/ken/cplx5.go
index 0e2c882..4e8f443 100644
--- a/test/ken/cplx5.go
+++ b/test/ken/cplx5.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test compound types made of complex numbers.
+
 package main
 
 var a [12]complex128
diff --git a/test/ken/divconst.go b/test/ken/divconst.go
index 46786fb..670e074 100644
--- a/test/ken/divconst.go
+++ b/test/ken/divconst.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test integer division by constants.
+
 package main
 
 import "math/rand"
diff --git a/test/ken/divmod.go b/test/ken/divmod.go
index 02c762d..f1bd56e 100644
--- a/test/ken/divmod.go
+++ b/test/ken/divmod.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test integer division and modulus.
+
 package main
 
 const (
diff --git a/test/ken/embed.go b/test/ken/embed.go
index a3e1980..9b35c56 100644
--- a/test/ken/embed.go
+++ b/test/ken/embed.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test embedded fields of structs, including methods.
+
 package main
 
 
diff --git a/test/ken/for.go b/test/ken/for.go
index 914229b..db35548 100644
--- a/test/ken/for.go
+++ b/test/ken/for.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple for loop.
 
 package main
 
diff --git a/test/ken/interbasic.go b/test/ken/interbasic.go
index 113fe3c..d8fbb95 100644
--- a/test/ken/interbasic.go
+++ b/test/ken/interbasic.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test interfaces on basic types.
+
 package main
 
 type myint int
diff --git a/test/ken/interfun.go b/test/ken/interfun.go
index ca875e8..9432181 100644
--- a/test/ken/interfun.go
+++ b/test/ken/interfun.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test interfaces and methods.
+
 package main
 
 type S struct {
diff --git a/test/ken/intervar.go b/test/ken/intervar.go
index 30815d0..8a2fca0 100644
--- a/test/ken/intervar.go
+++ b/test/ken/intervar.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test interface assignment.
+
 package main
 
 type	Iputs	interface {
diff --git a/test/ken/label.go b/test/ken/label.go
index b8867a7..fcb3e61 100644
--- a/test/ken/label.go
+++ b/test/ken/label.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test goto and labels.
+
 package main
 
 func main() {
diff --git a/test/ken/litfun.go b/test/ken/litfun.go
index 4c40ee2..e241d4e 100644
--- a/test/ken/litfun.go
+++ b/test/ken/litfun.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple function literals.
 
 package main
 
diff --git a/test/ken/mfunc.go b/test/ken/mfunc.go
index 2213b81..ef24991 100644
--- a/test/ken/mfunc.go
+++ b/test/ken/mfunc.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple multi-argument multi-valued function.
+
 package main
 
 func
diff --git a/test/ken/modconst.go b/test/ken/modconst.go
index 3905b81..d88cf10 100644
--- a/test/ken/modconst.go
+++ b/test/ken/modconst.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test integer modulus by contstants.
+
 package main
 
 import "math/rand"
diff --git a/test/ken/ptrfun.go b/test/ken/ptrfun.go
index b115931..af806cf 100644
--- a/test/ken/ptrfun.go
+++ b/test/ken/ptrfun.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test method invocation with pointer receivers and function-valued fields.
 
 package main
 
diff --git a/test/ken/ptrvar.go b/test/ken/ptrvar.go
index c6b4656..d78170c 100644
--- a/test/ken/ptrvar.go
+++ b/test/ken/ptrvar.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test pointers and the . (selector) operator on structs.
 
 package main
 
diff --git a/test/ken/range.go b/test/ken/range.go
index 07d0e9a..89c14e5 100644
--- a/test/ken/range.go
+++ b/test/ken/range.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test 'for range' on arrays, slices, and maps.
+
 package main
 
 const size = 16
diff --git a/test/ken/rob1.go b/test/ken/rob1.go
index 35720c9..3042a67 100644
--- a/test/ken/rob1.go
+++ b/test/ken/rob1.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test general operation using a list implementation.
+
 package main
 
 type Item interface {
diff --git a/test/ken/rob2.go b/test/ken/rob2.go
index bd8a435..4b4410e 100644
--- a/test/ken/rob2.go
+++ b/test/ken/rob2.go
@@ -4,6 +4,9 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test general operation using s-list.
+// First Go program ever run (although not in this exact form).
+
 package main
 
 import "fmt"
diff --git a/test/ken/robfor.go b/test/ken/robfor.go
index 958efca..c6a420b 100644
--- a/test/ken/robfor.go
+++ b/test/ken/robfor.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test for loops of many forms.
+
 package main
 
 func assertequal(is, shouldbe int, msg string) {
diff --git a/test/ken/robfunc.go b/test/ken/robfunc.go
index 40c5b90..885267e 100644
--- a/test/ken/robfunc.go
+++ b/test/ken/robfunc.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test functions of many signatures.
+
 package main
 
 func assertequal(is, shouldbe int, msg string) {
diff --git a/test/ken/shift.go b/test/ken/shift.go
index c60143d..af87896 100644
--- a/test/ken/shift.go
+++ b/test/ken/shift.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test shift.
+
 package main
 
 var	ians	[18]int;
diff --git a/test/ken/simparray.go b/test/ken/simparray.go
index 553bc4d..0e81a34 100644
--- a/test/ken/simparray.go
+++ b/test/ken/simparray.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple operations on arrays.
+
 package main
 
 var b[10] float32;
diff --git a/test/ken/simpbool.go b/test/ken/simpbool.go
index 4a8324c..ab2ecc21 100644
--- a/test/ken/simpbool.go
+++ b/test/ken/simpbool.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test basic operations on bool.
+
 package main
 
 type s struct {
diff --git a/test/ken/simpconv.go b/test/ken/simpconv.go
index 9dc7ebf..22cad2a 100644
--- a/test/ken/simpconv.go
+++ b/test/ken/simpconv.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple arithmetic conversion.
+
 package main
 
 type vlong int64
diff --git a/test/ken/simpfun.go b/test/ken/simpfun.go
index b2c803e..e5dc2b2 100644
--- a/test/ken/simpfun.go
+++ b/test/ken/simpfun.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple functions.
 
 package main
 
diff --git a/test/ken/simpswitch.go b/test/ken/simpswitch.go
index cc5f281..b28250b 100644
--- a/test/ken/simpswitch.go
+++ b/test/ken/simpswitch.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test simple switch.
+
 package main
 
 func main() {
diff --git a/test/ken/simpvar.go b/test/ken/simpvar.go
index 324008d..c6eefbb 100644
--- a/test/ken/simpvar.go
+++ b/test/ken/simpvar.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test scoping of variables.
+
 
 package main
 
diff --git a/test/ken/slicearray.go b/test/ken/slicearray.go
index e0f2d32..6cf676c 100644
--- a/test/ken/slicearray.go
+++ b/test/ken/slicearray.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test basic operations of slices and arrays.
+
 package main
 
 var bx [10]byte
diff --git a/test/ken/sliceslice.go b/test/ken/sliceslice.go
index ed1a5fe..c07c591 100644
--- a/test/ken/sliceslice.go
+++ b/test/ken/sliceslice.go
@@ -4,6 +4,8 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test slicing and re-slicing.
+
 package main
 
 var bx []byte
diff --git a/test/ken/string.go b/test/ken/string.go
index 9bd905d..6df8dc4 100644
--- a/test/ken/string.go
+++ b/test/ken/string.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test string operations including printing.
 
 package main
 
diff --git a/test/ken/strvar.go b/test/ken/strvar.go
index 34b2621..4d511fe 100644
--- a/test/ken/strvar.go
+++ b/test/ken/strvar.go
@@ -4,6 +4,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
+// Test struct-valued variables (not pointers).
 
 package main