Mercurial > hg > CbC > CbC_llvm
view clang/test/SemaObjC/protocol-implementing-class-methods.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 -verify %s // rdar://7020493 @protocol P1 @optional - (int) PMeth; @required - (void) : (double) arg; // expected-note {{method ':' declared here}} @end @interface NSImage <P1> - (void) initialize; // expected-note {{method 'initialize' declared here}} @end @interface NSImage (AirPortUI) - (void) initialize; @end @interface NSImage() - (void) CEMeth; // expected-note {{method 'CEMeth' declared here}} @end @implementation NSImage (AirPortUI) - (void) initialize {NSImage *p=0; [p initialize]; } // expected-warning {{category is implementing a method which will also be implemented by its primary class}} - (int) PMeth{ return 0; } - (void) : (double) arg{}; // expected-warning {{category is implementing a method which will also be implemented by its primary class}} - (void) CEMeth {}; // expected-warning {{category is implementing a method which will also be implemented by its primary class}} @end // rdar://10014946 typedef char BOOL; @interface I { BOOL allowsDeleting; } @property (nonatomic, assign, readwrite) BOOL allowsDeleting; @end @implementation I(CAT) - (BOOL) allowsDeleting { return 1; } @end