diff options
author | Katie Hockman <katie@golang.org> | 2021-11-03 10:58:59 -0400 |
---|---|---|
committer | Katie Hockman <katie@golang.org> | 2021-11-03 16:04:43 +0000 |
commit | e0e6e4d23fe840c2c9b4caed30930cad6788b797 (patch) | |
tree | b36f36d34926e4b2f4eefe957e097439038edf71 /src/internal | |
parent | 5f0e5d21bb1f2c1baf15bfd90ad5b090b88e6292 (diff) | |
download | go-e0e6e4d23fe840c2c9b4caed30930cad6788b797.tar.gz go-e0e6e4d23fe840c2c9b4caed30930cad6788b797.zip |
internal/fuzz: improve error for mismatched types
Fixes #48635
Change-Id: Ia3cde119d5eb31bc771fe3a39acb2372dbd988ff
Reviewed-on: https://go-review.googlesource.com/c/go/+/361114
Trust: Katie Hockman <katie@golang.org>
Trust: Daniel Martà <mvdan@mvdan.cc>
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Daniel Martà <mvdan@mvdan.cc>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Diffstat (limited to 'src/internal')
-rw-r--r-- | src/internal/fuzz/fuzz.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/internal/fuzz/fuzz.go b/src/internal/fuzz/fuzz.go index 2ebe2a64db..aef1dee978 100644 --- a/src/internal/fuzz/fuzz.go +++ b/src/internal/fuzz/fuzz.go @@ -997,11 +997,15 @@ func readCorpusData(data []byte, types []reflect.Type) ([]interface{}, error) { // provided. func CheckCorpus(vals []interface{}, types []reflect.Type) error { if len(vals) != len(types) { - return fmt.Errorf("wrong number of values in corpus entry %v: want %v", vals, types) + return fmt.Errorf("wrong number of values in corpus entry: %d, want %d", len(vals), len(types)) + } + valsT := make([]reflect.Type, len(vals)) + for valsI, v := range vals { + valsT[valsI] = reflect.TypeOf(v) } for i := range types { - if reflect.TypeOf(vals[i]) != types[i] { - return fmt.Errorf("mismatched types in corpus entry: %v, want %v", vals, types) + if valsT[i] != types[i] { + return fmt.Errorf("mismatched types in corpus entry: %v, want %v", valsT, types) } } return nil |