3 // Copyright 2016 The Go Authors. All rights reserved.
4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file.
7 // Verify that type switch statements with duplicate cases are detected
15 func f4(e interface{}) {
18 case int: // ERROR "duplicate case int in type switch"
21 case error: // ERROR "duplicate case error in type switch"
23 case fmt.Stringer: // ERROR "duplicate case fmt.Stringer in type switch"
30 case struct { // ERROR "duplicate case struct { i int .tag1. } in type switch|duplicate case"