// RUN: %target-swift-frontend -typecheck %s -I %S/Inputs -enable-source-import -parse-as-library -verify // Name lookup is global in a library. var x : x_ty = 4 typealias x_ty = Int // Name lookup is global in a library. // This case requires doing semantic analysis (conversion checking) after // parsing. var y : y_ty = 4 typealias y_ty = (Int) // Verify that never-defined types are caught. var z : z_ty = 42 // expected-error {{cannot find type 'z_ty' in scope}} // Make sure we type-check all declarations before any initializers var a : Int = b var b : Int = 1 var c = 1 var d = 2 var e = 3 // Name lookup with imports. import imported_module func over1(_ x: UInt64) {} // expected-note{{found this candidate}} func over2(_ x: UInt32) {} func over3(_ x: UInt32) {} typealias over4 = UInt32 func testover() { // FIXME: Very weird diagnostic here. over1(0) // expected-error{{ambiguous use of 'over1'}} over2(0) over3(0) // FIXME: Should we produce an ambiguity error here? var x : over4 = 10 } // Referring to name within a module. var d2 : Swift.Int = 5 var y2 : library.y_ty = 5 func increment_y2() { y2 = library.y2 + 1 }