Examples of errors detected by the V8010 diagnostic
V8010. Two or more 'case' branches have equivalent expressions.
tau
V8010 Two or more case branches have equivalent expressions. instance.go 93
func (p *pluginInstance) makeFunc(....) reflect.Value {
....
_out := make([]reflect.Value, len(cOut))
for idx := 0; idx < len(cOut); idx++ {
switch retTypes[idx] {
case vm.I32Type:
_out[idx] = reflect.ValueOf(int32(cOut[idx]))
case vm.I64Type: // <=
_out[idx] = reflect.ValueOf(int64(cOut[idx]))
case vm.F32Type:
_out[idx] = reflect.ValueOf(math.Float32frombits(uint32(cOut[idx])))
case vm.I64Type: // <=
_out[idx] = reflect.ValueOf(math.Float64frombits(cOut[idx]))
}
}
....
}
AdGuardHome
V8010 Two or more case branches have equivalent expressions. migrator.go 95
func validateVersion(current, target uint) (err error) {
switch {
case current > target:
return fmt.Errorf("unknown current schema version %d", current)
case target > LastSchemaVersion:
return fmt.Errorf("unknown target schema version %d", target)
case target < current:
return fmt.Errorf("target schema version %d lower than current %d",
target, current)
default:
return nil
}
}