Fixes #17302
Change-Id: I375d5d4f2714ff415542f4fe56a548e53c5e8ba6
Reviewed-on: https://go-review.googlesource.com/30134
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
// Use context Values only for request-scoped data that transits processes and
// APIs, not for passing optional parameters to functions.
//
-// The provided key must be comparable.
+// The provided key must be comparable and should not be
+// of type string or any other built-in type.
+// Users of WithValue should define their own types for keys.
func WithValue(parent Context, key, val interface{}) Context {
if key == nil {
panic("nil key")