1*67e74705SXin Li // RUN: %clang_cc1 -triple x86_64-apple-macosx10.9.0 -fsyntax-only -fapplication-extension %s -verify 2*67e74705SXin Li // RUN: %clang_cc1 -triple armv7-apple-ios9.0 -fsyntax-only -fapplication-extension %s -verify 3*67e74705SXin Li // RUN: %clang_cc1 -triple arm64-apple-tvos3.0 -fsyntax-only -fapplication-extension -DTVOS=1 -verify %s 4*67e74705SXin Li // RUN: %clang_cc1 -triple arm64-apple-tvos3.0 -fsyntax-only -fapplication-extension -verify %s 5*67e74705SXin Li 6*67e74705SXin Li #if __has_feature(attribute_availability_app_extension) 7*67e74705SXin Li __attribute__((availability(macosx_app_extension,unavailable))) 8*67e74705SXin Li #ifndef TVOS 9*67e74705SXin Li __attribute__((availability(ios_app_extension,unavailable))) 10*67e74705SXin Li #else 11*67e74705SXin Li __attribute__((availability(tvos_app_extension,unavailable))) 12*67e74705SXin Li #endif 13*67e74705SXin Li #endif 14*67e74705SXin Li void f0(int); // expected-note {{'f0' has been explicitly marked unavailable here}} 15*67e74705SXin Li 16*67e74705SXin Li __attribute__((availability(macosx,unavailable))) 17*67e74705SXin Li #ifndef TVOS 18*67e74705SXin Li __attribute__((availability(ios,unavailable))) 19*67e74705SXin Li #else 20*67e74705SXin Li __attribute__((availability(tvos,unavailable))) 21*67e74705SXin Li #endif 22*67e74705SXin Li void f1(int); // expected-note {{'f1' has been explicitly marked unavailable here}} 23*67e74705SXin Li test()24*67e74705SXin Livoid test() { 25*67e74705SXin Li f0(1); // expected-error {{'f0' is unavailable: not available on}} 26*67e74705SXin Li f1(1); // expected-error {{'f1' is unavailable}} 27*67e74705SXin Li } 28*67e74705SXin Li 29