aboutsummaryrefslogtreecommitdiff
path: root/test/fixedbugs/issue42568.go
blob: 834fdc58f36a911380511396a99545b9976a63f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// compile

// Copyright 2020 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Ensure that late expansion correctly handles an OpIData with type interface{}

package p

type S struct{}

func (S) M() {}

type I interface {
	M()
}

func f(i I) {
	o := i.(interface{})
	if _, ok := i.(*S); ok {
		o = nil
	}
	println(o)
}