⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 proto-lossage-1.mm

📁 linux下编程用 编译软件
💻 MM
字号:
/* Test for situations in which protocol conformance information   may be lost, leading to superfluous warnings.  *//* Author: Ziemowit Laski <zlaski@apple.com>.  *//* { dg-do compile } *//* One-line substitute for objc/objc.h */typedef struct objc_object { struct objc_class *class_pointer; } *id;@protocol NSObject- (int)someValue;@end@interface NSObject <NSObject>@end@protocol PlateMethods- (void)someMethod;@end@interface Foo {  NSObject <PlateMethods> *plate;  id <PlateMethods> plate1;  NSObject *plate2;}- (id <PlateMethods>) getPlate;- (id <NSObject>) getPlate1;- (int) getValue;@end@implementation Foo- (id <PlateMethods>) getPlate {  return plate;  /* { dg-bogus "does not implement" } */}- (id <NSObject>) getPlate1 {  return (id <NSObject>)plate1; /* { dg-bogus "does not conform" } */}- (int) getValue {  int i = [plate1 someValue];   /* { dg-warning ".\\-someValue. not found in protocol\\(s\\)" } */  int j = [(id <NSObject>)plate1 someValue];  /* { dg-bogus "not found in protocol" } */  int k = [(id)plate1 someValue]; /* { dg-bogus "not found in protocol" } */  return i + j + k;}@end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -