Mercurial > hg > CbC > CbC_llvm
view clang/test/SemaObjC/warn-protocol-method-deprecated.m @ 207:2e18cbf3894f
LLVM12
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 08 Jun 2021 06:07:14 +0900 |
parents | 1d019706d866 |
children |
line wrap: on
line source
// RUN: %clang_cc1 -fsyntax-only -Wno-objc-root-class -verify %s // rdar://11618852 @protocol TestProtocol - (void)newProtocolMethod; - (void)deprecatedProtocolMethod __attribute__((deprecated)); // expected-note 2 {{'deprecatedProtocolMethod' has been explicitly marked deprecated here}} @end @interface NSObject @end @interface TestClass : NSObject <TestProtocol> - (void)newInstanceMethod; - (void)deprecatedInstanceMethod __attribute__((deprecated)); // expected-note {{'deprecatedInstanceMethod' has been explicitly marked deprecated here}} @end int main(int argc, const char * argv[]) { TestClass *testObj = (TestClass*)0; [testObj newInstanceMethod]; [testObj deprecatedInstanceMethod]; // expected-warning {{'deprecatedInstanceMethod' is deprecated}} [testObj newProtocolMethod]; [testObj deprecatedProtocolMethod]; // expected-warning {{'deprecatedProtocolMethod' is deprecated}} id <TestProtocol> testProto = testObj; [testProto newProtocolMethod]; [testProto deprecatedProtocolMethod]; // expected-warning {{'deprecatedProtocolMethod' is deprecated}} return 0; }