diff options
Diffstat (limited to 'clang/test/SemaObjC/protocol-warn.m')
-rw-r--r-- | clang/test/SemaObjC/protocol-warn.m | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/protocol-warn.m b/clang/test/SemaObjC/protocol-warn.m new file mode 100644 index 0000000..2d04238 --- /dev/null +++ b/clang/test/SemaObjC/protocol-warn.m @@ -0,0 +1,55 @@ +// RUN: %clang_cc1 -fsyntax-only -verify %s +// radar 7638810 + +@protocol NSObject @end + +@interface NSObject <NSObject> @end + +@interface UIResponder : NSObject +@end + +@implementation UIResponder +@end + +@interface UIView : UIResponder +@end + +@implementation UIView +@end + +@interface UIWebTiledView : UIView +@end + +@implementation UIWebTiledView +@end + +@interface UIWebDocumentView : UIWebTiledView +@end + +@implementation UIWebDocumentView +@end + +@interface UIWebBrowserView : UIWebDocumentView +@end + +@implementation UIWebBrowserView +@end + +@interface UIPDFView : UIView +@end + +@implementation UIPDFView +@end + +@interface UIWebPDFView : UIPDFView +@end + +@implementation UIWebPDFView +@end + +UIWebPDFView *getView() +{ + UIWebBrowserView *browserView; + UIWebPDFView *pdfView; + return pdfView ? pdfView : browserView; // expected-warning {{incompatible pointer types returning 'UIView<NSObject> *' from a function with result type 'UIWebPDFView *'}} +} |