2016-03-17 02:50:49 +08:00
// RUN: %clang_cc1 -triple x86_64-apple-darwin9 -verify -fsyntax-only %s
// RUN: %clang_cc1 -triple x86_64-apple-darwin9 -fdiagnostics-parseable-fixits %s 2>&1 | FileCheck %s
// RUN: cp %s %t
// RUN: %clang_cc1 -triple x86_64-apple-darwin9 -fixit %t
// RUN: %clang_cc1 -triple x86_64-apple-darwin9 -Werror %t
# if !__has_feature(attribute_deprecated_with_replacement)
# error "Missing __has_feature"
# endif
2016-03-22 01:30:55 +08:00
# if !__has_feature(attribute_availability_with_replacement)
# error "Missing __has_feature"
# endif
2016-03-17 02:50:49 +08:00
void f_8 ( int ) __attribute__ ( ( deprecated ( " message " , " new8 " ) ) ) ; // expected-note {{'f_8' has been explicitly marked deprecated here}}
void new8 ( int ) ;
2016-03-22 01:30:55 +08:00
void f_2 ( int ) __attribute__ ( ( availability ( macosx , deprecated = 9.0 , replacement = " new2 " ) ) ) ; // expected-note {{'f_2' has been explicitly marked deprecated here}}
void new2 ( int ) ;
2016-03-17 02:50:49 +08:00
void test ( ) {
f_8 ( 0 ) ; // expected-warning{{'f_8' is deprecated}}
// CHECK: fix-it:"{{.*}}":{[[@LINE-1]]:3-[[@LINE-1]]:6}:"new8"
2016-06-29 04:55:30 +08:00
f_2 ( 0 ) ; // expected-warning{{'f_2' is deprecated: first deprecated in macOS 9.0}}
2016-03-22 01:30:55 +08:00
// CHECK: fix-it:"{{.*}}":{[[@LINE-1]]:3-[[@LINE-1]]:6}:"new2"
2016-03-17 02:50:49 +08:00
}