cmd/link: escape % characters in symbols when reporting errors
cmd/link: escape % characters in symbols when reporting errors

Generic function symbols sometimes have % in them, like:

    main.B2[%2eshape.string_0].m2·f

Which confuses this code because it doesn't esacpe % when
using this string as a format string, instead of a format argument.

Or could we get rid of the . -> %2e rewrite somehow?
I think it comes from LinkString.

Change-Id: I3275501f44cf30485e9d4577e0dfa77996d4939e
Reviewed-on: https://go-review.googlesource.com/c/go/+/357837
Trust: Keith Randall <8c99c3a9284e493be632950b84cd789d08ed3e9d@golang.org>
Trust: Dan Scales <7338a4f274e3bf1354488b9d1f344f4c9a69a8fb@google.com>
Run-TryBot: Keith Randall <8c99c3a9284e493be632950b84cd789d08ed3e9d@golang.org>
TryBot-Result: Go Bot <66cb808b70d30c07676d5e946fee83fd561249e5@golang.org>
Reviewed-by: Dan Scales <7338a4f274e3bf1354488b9d1f344f4c9a69a8fb@google.com>

CAFxX/go,golang/go,nawawi/go,nawawi/go,golang/go,cloudflare/go,nawawi/go,CAFxX/go,CAFxX/go,cloudflare/go,CAFxX/go,nawawi/go,golang/go,cloudflare/go,golang/go,cloudflare/go,cloudflare/go,nawawi/go,golang/go,cloudflare/go,CAFxX/go,CAFxX/go,nawawi/go,CAFxX/go,cloudflare/go,nawawi/go,golang/go,golang/go,golang/go,CAFxX/go,nawawi/go,cloudflare/go