net: document *OpError.Err must not be nil

The point of *net.OpError is to add details to an underlying lower
level error. It makes no sense to have an OpError without an Err and
a nil *OpError.Err will cause *OpError.Error() method to panic.

Fixes #33007

Change-Id: If4fb2501e02dad110a095b73e18c47312ffa6015
Reviewed-on: https://go-review.googlesource.com/c/go/+/187677
Reviewed-by: Rob Pike <r@golang.org>
diff --git a/src/net/net.go b/src/net/net.go
index 38c6b99..1d7e5e7 100644
--- a/src/net/net.go
+++ b/src/net/net.go
@@ -452,6 +452,7 @@
 	Addr Addr
 
 	// Err is the error that occurred during the operation.
+	// The Error method panics if the error is nil.
 	Err error
 }