add some support for modifying what pointers point to

R=rsc
DELTA=27  (16 added, 11 deleted, 0 changed)
OCL=19130
CL=19132
diff --git a/src/lib/reflect/test.go b/src/lib/reflect/test.go
index 7088094..7b97608 100644
--- a/src/lib/reflect/test.go
+++ b/src/lib/reflect/test.go
@@ -91,17 +91,6 @@
 	var s string;
 	var t reflect.Type;
 
-{
-	var ip *int32;
-	var i int32 = 1234;
-	vip := reflect.NewValue(&ip);
-	vi := reflect.NewValue(i);
-	vip.(reflect.PtrValue).Sub().(reflect.PtrValue).SetSub(vi);
-	if *ip != 1234 {
-		panicln("SetSub failure", *ip);
-	}
-}
-
 	// Types
 	typedump("missing", "$missing$");
 	typedump("int", "int");
@@ -205,6 +194,17 @@
 		assert(reflect.ValueToString(value.(reflect.PtrValue).Sub()), "main.AA·test{1, 2, 3, 4, 123, 6, 7, 8, 9, 10}");
 	}
 
+	{
+		var ip *int32;
+		var i int32 = 1234;
+		vip := reflect.NewValue(&ip);
+		vi := reflect.NewValue(i);
+		vip.(reflect.PtrValue).Sub().(reflect.PtrValue).SetSub(vi);
+		if *ip != 1234 {
+			panicln("SetSub failure", *ip);
+		}
+	}
+
 	var pt reflect.PtrType;
 	var st reflect.StructType;
 	var mt reflect.MapType;