// Copyright 2012 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.

// Test converting a type defined in a different package to an
// interface defined in a third package, where the interface has a
// hidden method.  This used to cause a link error with gccgo.

package main

import (
	"./one"
	"./two"
)

func F(i1 one.I1) {
	switch v := i1.(type) {
	case two.S2:
		one.F1(v)
	}
}

func main() {
	F(nil)
}