Add has_feature attribute_availability_with_strict.

rdar://23791325

llvm-svn: 261548
This commit is contained in:
Manman Ren 2016-02-22 18:24:30 +00:00
parent 46123a8891
commit 6731d739eb
2 changed files with 5 additions and 0 deletions

View File

@ -1066,6 +1066,7 @@ static bool HasFeature(const Preprocessor &PP, const IdentifierInfo *II) {
.Case("attribute_availability_with_version_underscores", true) .Case("attribute_availability_with_version_underscores", true)
.Case("attribute_availability_tvos", true) .Case("attribute_availability_tvos", true)
.Case("attribute_availability_watchos", true) .Case("attribute_availability_watchos", true)
.Case("attribute_availability_with_strict", true)
.Case("attribute_cf_returns_not_retained", true) .Case("attribute_cf_returns_not_retained", true)
.Case("attribute_cf_returns_retained", true) .Case("attribute_cf_returns_retained", true)
.Case("attribute_cf_returns_on_parameters", true) .Case("attribute_cf_returns_on_parameters", true)

View File

@ -1,5 +1,9 @@
// RUN: %clang_cc1 "-triple" "x86_64-apple-darwin9.0.0" -fsyntax-only -verify %s // RUN: %clang_cc1 "-triple" "x86_64-apple-darwin9.0.0" -fsyntax-only -verify %s
#if !__has_feature(attribute_availability_with_strict)
#error "Missing __has_feature"
#endif
void f0(int) __attribute__((availability(macosx,introduced=10.4,deprecated=10.6))); void f0(int) __attribute__((availability(macosx,introduced=10.4,deprecated=10.6)));
void f1(int) __attribute__((availability(macosx,introduced=10.5))); void f1(int) __attribute__((availability(macosx,introduced=10.5)));
void f2(int) __attribute__((availability(macosx,introduced=10.4,deprecated=10.5))); // expected-note {{'f2' has been explicitly marked deprecated here}} void f2(int) __attribute__((availability(macosx,introduced=10.4,deprecated=10.5))); // expected-note {{'f2' has been explicitly marked deprecated here}}