mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
98 lines
2.8 KiB
Plaintext
98 lines
2.8 KiB
Plaintext
// The "flags" line in this test deliberately has no flags and no space after
|
|
// the colon, just to make sure that works (even though it'll never be printed
|
|
// that way).
|
|
|
|
// swift-module-flags:
|
|
// swift-interface-format-version: 1.0
|
|
|
|
// Make sure parse-only works...
|
|
// RUN: %target-swift-frontend -parse %s
|
|
|
|
// ...and then make sure parse-and-typecheck-and-serialize works.
|
|
// RUN: %empty-directory(%t)
|
|
// RUN: %target-swift-frontend -compile-module-from-interface -o %t/SmokeTest.swiftmodule %s
|
|
// RUN: %target-swift-ide-test -print-module -module-to-print SmokeTest -I %t -source-filename x -print-interface > %t/SmokeTest.txt
|
|
// RUN: %FileCheck %s < %t/SmokeTest.txt
|
|
// RUN: %FileCheck -check-prefix NEGATIVE %s < %t/SmokeTest.txt
|
|
// RUN: llvm-bcanalyzer -dump %t/SmokeTest.swiftmodule | grep FILE_DEPENDENCY
|
|
|
|
// CHECK-LABEL: public class TestClass
|
|
public class TestClass {
|
|
// CHECK: public init(){{$}}
|
|
public init()
|
|
|
|
// CHECK: public func method(){{$}}
|
|
public func method()
|
|
|
|
// CHECK: public subscript(_: Int) -> Void{{$}}
|
|
public subscript(_: Int) -> Void { get set }
|
|
|
|
// CHECK: public var prop: Int{{$}}
|
|
public var prop: Int { get set }
|
|
|
|
// CHECK: public static var propWithNoAccessors: Int{{$}}
|
|
public static var propWithNoAccessors: Int
|
|
|
|
// NEGATIVE-NOT: deinit
|
|
deinit
|
|
} // CHECK: {{^}$}}
|
|
|
|
// CHECK-LABEL: public class TestEmptyClass {
|
|
public class TestEmptyClass {
|
|
} // CHECK-NEXT: {{^}$}}
|
|
|
|
// CHECK-LABEL: public struct TestEmptyStruct {
|
|
public struct TestEmptyStruct {
|
|
} // CHECK-NEXT: {{^}$}}
|
|
|
|
// CHECK-LABEL: public enum TestEnum
|
|
public enum TestEnum {
|
|
// CHECK: case a
|
|
case a
|
|
|
|
// CHECK: public init(){{$}}
|
|
public init()
|
|
|
|
// CHECK: public func method(){{$}}
|
|
public func method()
|
|
|
|
// CHECK: public subscript(_: Int) -> Void{{$}}
|
|
public subscript(_: Int) -> Void { get set }
|
|
|
|
// CHECK: public var prop: Int{{$}}
|
|
public var prop: Int { get set }
|
|
|
|
// CHECK: public static var propWithNoAccessors: Int{{$}}
|
|
public static var propWithNoAccessors: Int
|
|
} // CHECK: {{^}$}}
|
|
|
|
// CHECK-LABEL: public struct TestStruct
|
|
public struct TestStruct {
|
|
// CHECK: public init(){{$}}
|
|
public init()
|
|
|
|
// CHECK: public func method(){{$}}
|
|
public func method()
|
|
|
|
// CHECK: public subscript(_: Int) -> Void{{$}}
|
|
public subscript(_: Int) -> Void { get set }
|
|
|
|
// CHECK: public var prop: Int{{$}}
|
|
public var prop: Int { get set }
|
|
|
|
// CHECK: public static var propWithNoAccessors: Int{{$}}
|
|
public static var propWithNoAccessors: Int
|
|
} // CHECK: {{^}$}}
|
|
|
|
// CHECK: public let globalWithNoAccessors: Int{{$}}
|
|
public let globalWithNoAccessors: Int
|
|
|
|
// CHECK: public var readOnlyVar: Int { get }{{$}}
|
|
public var readOnlyVar: Int { get }
|
|
|
|
// CHECK: public var readWriteVar: Int{{$}}
|
|
public var readWriteVar: Int { get set }
|
|
|
|
// CHECK: public func verySimpleFunction(){{$}}
|
|
public func verySimpleFunction()
|