// RUN: %swift -parse -verify -constraint-checker %s struct G { constructor(x:G) { } func foo(x:G) { } func bar(x:U) { } static func static_foo(x:G) { } static func static_bar(x:U) { } } typealias GInt = G typealias GChar = G GInt(GChar()) GInt().foo(GChar()) GInt().bar(0) GInt.static_foo(GChar()) GInt.static_bar(0)