diff options
| author | qiulaidongfeng <2645477756@qq.com> | 2025-07-26 13:44:12 +0800 |
|---|---|---|
| committer | Cherry Mui <cherryyz@google.com> | 2025-12-29 12:45:33 -0800 |
| commit | 08369369e5a4b27d8f6d21ea571ea5027b9a2b46 (patch) | |
| tree | b18da411be0f69a9797dc06dea2b35baa225941e | |
| parent | ca8effbde150257847f90de220686786aa091f90 (diff) | |
| download | go-08369369e5a4b27d8f6d21ea571ea5027b9a2b46.tar.xz | |
reflect: document Call/CallSlice panic when v is unexported field
Fixes #74377
Change-Id: I250d67ef2a4bf4dac939be669eeaf1091523ac06
Reviewed-on: https://go-review.googlesource.com/c/go/+/690617
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Roland Shoemaker <roland@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
| -rw-r--r-- | src/reflect/value.go | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/reflect/value.go b/src/reflect/value.go index 7f0ec2a397..8c8acbaa9a 100644 --- a/src/reflect/value.go +++ b/src/reflect/value.go @@ -362,6 +362,7 @@ func (v Value) CanSet() bool { // type of the function's corresponding input parameter. // If v is a variadic function, Call creates the variadic slice parameter // itself, copying in the corresponding values. +// It panics if the Value was obtained by accessing unexported struct fields. func (v Value) Call(in []Value) []Value { v.mustBe(Func) v.mustBeExported() @@ -375,6 +376,7 @@ func (v Value) Call(in []Value) []Value { // It returns the output results as Values. // As in Go, each input argument must be assignable to the // type of the function's corresponding input parameter. +// It panics if the Value was obtained by accessing unexported struct fields. func (v Value) CallSlice(in []Value) []Value { v.mustBe(Func) v.mustBeExported() |
