diff --git a/src/reflect/value.go b/src/reflect/value.go index 346ca27f..84d308f7 100644 --- a/src/reflect/value.go +++ b/src/reflect/value.go @@ -163,10 +163,7 @@ func (v Value) IsNil() bool { slice := (*sliceHeader)(v.value) return slice.data == nil case Interface: - if v.value == nil { - return true - } - _, val := decomposeInterface(*(*interface{})(v.value)) + val := *(*interface{})(v.value) return val == nil default: panic(&ValueError{Method: "IsNil", Kind: v.Kind()})