Print strict in Availability attribute when it is on.
authorManman Ren <manman.ren@gmail.com>
Thu, 10 Mar 2016 23:54:12 +0000 (23:54 +0000)
committerManman Ren <manman.ren@gmail.com>
Thu, 10 Mar 2016 23:54:12 +0000 (23:54 +0000)
llvm-svn: 263172

clang/test/Sema/attr-print.c
clang/utils/TableGen/ClangAttrEmitter.cpp

index b3bdfd7..96f1359 100644 (file)
@@ -32,3 +32,6 @@ int * __uptr __ptr32 p32_3;
 
 // CHECK: int * __sptr * __ptr32 ppsp32;
 int * __sptr * __ptr32 ppsp32;
+
+// CHECK: __attribute__((availability(macosx, strict, introduced=10.6)));
+void f6(int) __attribute__((availability(macosx,strict,introduced=10.6)));
index 57c7cb3..2b0baee 100644 (file)
@@ -1103,6 +1103,7 @@ createArgument(const Record &Arg, StringRef Attr,
 
 static void writeAvailabilityValue(raw_ostream &OS) {
   OS << "\" << getPlatform()->getName();\n"
+     << "  if (getStrict()) OS << \", strict\";\n"
      << "  if (!getIntroduced().empty()) OS << \", introduced=\" << getIntroduced();\n"
      << "  if (!getDeprecated().empty()) OS << \", deprecated=\" << getDeprecated();\n"
      << "  if (!getObsoleted().empty()) OS << \", obsoleted=\" << getObsoleted();\n"