aboutsummaryrefslogtreecommitdiff
path: root/src/internal
diff options
context:
space:
mode:
authorKatie Hockman <katie@golang.org>2021-11-03 10:58:59 -0400
committerKatie Hockman <katie@golang.org>2021-11-03 16:04:43 +0000
commite0e6e4d23fe840c2c9b4caed30930cad6788b797 (patch)
treeb36f36d34926e4b2f4eefe957e097439038edf71 /src/internal
parent5f0e5d21bb1f2c1baf15bfd90ad5b090b88e6292 (diff)
downloadgo-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.go10
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