]> Cypherpunks repositories - gostls13.git/commitdiff
errors: document that the target of Is must be comparable
authorDamien Neil <dneil@google.com>
Mon, 27 Oct 2025 19:27:12 +0000 (12:27 -0700)
committerGopher Robot <gobot@golang.org>
Tue, 28 Oct 2025 15:30:47 +0000 (08:30 -0700)
If target is not comparable, then errors.Is(err, target) can panic.
(Put another way, if target == target panics, then Is can panic.)

Document that the target must be comparable.

For #74488

Change-Id: I694dc4c91a608b80f044f06dd1c6ac32b8e77c9c
Reviewed-on: https://go-review.googlesource.com/c/go/+/715440
Reviewed-by: Alan Donovan <adonovan@google.com>
Auto-Submit: Damien Neil <dneil@google.com>
TryBot-Bypass: Damien Neil <dneil@google.com>

src/errors/wrap.go

index 2ebb951f1de93ddfcadf02cc391680dafb0eb2a9..e4a5ca33d5e0e7ef3b05c24eb5a516a749decea1 100644 (file)
@@ -25,6 +25,7 @@ func Unwrap(err error) error {
 }
 
 // Is reports whether any error in err's tree matches target.
+// The target must be comparable.
 //
 // The tree consists of err itself, followed by the errors obtained by repeatedly
 // calling its Unwrap() error or Unwrap() []error method. When err wraps multiple