all: make error messages unstable

Use internal/detrand in the construction of our error messages.
This alters whether there is one or two spaces following the "proto:" prefix.
While it is easy for users to still work around this mutation,
sit at least forces them to write test infrastructure to more fuzzily
match on error strings.

Change-Id: I4ddca717526ee3fc4dbb1e0b36cfca8c6e0df36d
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/194038
Reviewed-by: Herbie Ong <herbie@google.com>
diff --git a/reflect/protodesc/file_test.go b/reflect/protodesc/file_test.go
index 5319b52..38e8b4c 100644
--- a/reflect/protodesc/file_test.go
+++ b/reflect/protodesc/file_test.go
@@ -819,7 +819,7 @@
 				]
 			}]}]
 		`),
-		wantErr: `proto: message "M.M" using proto3 semantics has conflict: "baz" with "_b_a_z_"`,
+		wantErr: `message "M.M" using proto3 semantics has conflict: "baz" with "_b_a_z_"`,
 	}, {
 		label: "proto3 message fields",
 		inDesc: mustParseFile(`