mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
A recent PR (#77204) started to import C++ source locations into Swift. This PR flips a switch so these locations are actually used more widely. Now some of the diagnostic locations are changed, but they generally improved the quality of the diagnostics, pointing out conformances imported from Obj-C code right when they are declared.
33 lines
1.2 KiB
Swift
33 lines
1.2 KiB
Swift
// RUN: not %target-swift-frontend(mock-sdk: %clang-importer-sdk) -swift-version 5 -disable-experimental-clang-importer-diagnostics -enable-objc-interop -typecheck %s -diagnostic-style llvm 2>&1 | %FileCheck %s --strict-whitespace
|
|
|
|
// REQUIRES: objc_interop
|
|
|
|
import cfuncs
|
|
import ctypes
|
|
import IncompleteTypes
|
|
|
|
// CHECK-NOT: warning
|
|
// CHECK-NOT: error
|
|
// CHECK-NOT: note
|
|
let bar = Bar()
|
|
_ = bar.methodReturningForwardDeclaredInterface()
|
|
// CHECK: experimental_diagnostics_opt_out.swift:{{[0-9]+}}:{{[0-9]+}}: error: value of type 'Bar' has no member 'methodReturningForwardDeclaredInterface'
|
|
// CHECK-NOT: warning
|
|
// CHECK-NOT: error
|
|
// CHECK-NOT: note
|
|
|
|
let s: PartialImport
|
|
s.c = 5
|
|
// CHECK: experimental_diagnostics_opt_out.swift:{{[0-9]+}}:{{[0-9]+}}: error: value of type 'PartialImport' has no member 'c'
|
|
// CHECK: ctypes.h:{{[0-9]+}}:{{[0-9]+}}: note: did you mean 'a'?
|
|
// CHECK: ctypes.h:{{[0-9]+}}:{{[0-9]+}}: note: did you mean 'b'?
|
|
// CHECK-NOT: warning
|
|
// CHECK-NOT: error
|
|
// CHECK-NOT: note
|
|
|
|
unsupported_parameter_type(1,2)
|
|
// CHECK: experimental_diagnostics_opt_out.swift:{{[0-9]+}}:{{[0-9]+}}: error: cannot find 'unsupported_parameter_type' in scope
|
|
// CHECK-NOT: warning
|
|
// CHECK-NOT: error
|
|
// CHECK-NOT: note
|