blob: d866edd20efdc542c9e5a9bb1fa758c07980207f [file] [log] [blame]
// RUN: %target-typecheck-verify-swift -I %S/Inputs/broken-modules
import BrokenAPINotes
func testBrokenSwiftName(x: inout ZXSpectrum) {
_ = x.accumulator
x.accumulator = 0
// The functions that import as `register`'s accessors have incorrect
// signatures for a getter or setter. Ensure we drop the import instead of
// forming an invalid property.
_ = x.register // expected-error{{has no member}}
x.register = 0 // expected-error{{has no member}}
_ = x.misnamedRegister // expected-error{{has no member}}
x.misnamedRegister = 0 // expected-error{{has no member}}
// Ensure that definitions with invalid API notes are still available
// under their original names.
ZXSpectrumGetRegister(&x, 0)
ZXSpectrumSetRegister(&x, 0, 1)
ZXSpectrumGetMisnamedRegister(&x, 0)
// TODO: Conservative validation in Clang doesn't reject the API name here
// ZXSpectrumSetMisnamedRegister(&x, 0, 1)
ZXSpectrumHelperReset()
}