From 6070b7098350ea390fd0aeabde12e130f32039e9 Mon Sep 17 00:00:00 2001 From: Manman Ren Date: Mon, 22 Feb 2016 18:24:30 +0000 Subject: [PATCH] Add has_feature attribute_availability_with_strict. rdar://23791325 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@261548 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Lex/PPMacroExpansion.cpp | 1 + test/Sema/attr-availability-macosx.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/lib/Lex/PPMacroExpansion.cpp b/lib/Lex/PPMacroExpansion.cpp index a47b356f9c..8d96d7bdc7 100644 --- a/lib/Lex/PPMacroExpansion.cpp +++ b/lib/Lex/PPMacroExpansion.cpp @@ -1066,6 +1066,7 @@ static bool HasFeature(const Preprocessor &PP, const IdentifierInfo *II) { .Case("attribute_availability_with_version_underscores", true) .Case("attribute_availability_tvos", true) .Case("attribute_availability_watchos", true) + .Case("attribute_availability_with_strict", true) .Case("attribute_cf_returns_not_retained", true) .Case("attribute_cf_returns_retained", true) .Case("attribute_cf_returns_on_parameters", true) diff --git a/test/Sema/attr-availability-macosx.c b/test/Sema/attr-availability-macosx.c index a177ef2972..7efe750692 100644 --- a/test/Sema/attr-availability-macosx.c +++ b/test/Sema/attr-availability-macosx.c @@ -1,5 +1,9 @@ // 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 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}} -- 2.40.0