method-7.m

来自「用于进行gcc测试」· M 代码 · 共 30 行

M
30
字号
/* Check if finding multiple signatures for a method is handled gracefully.  *//* Author:  Ziemowit Laski <zlaski@apple.com>  *//* { dg-do compile } *//* { dg-options "-Wstrict-selector-match" } */#include <objc/Object.h>@interface Class1- (void)setWindow:(Object *)wdw;@end@interface Class2- (void)setWindow:(Class1 *)window;@endid foo(void) {  Object *obj = [[Object alloc] init];  id obj2 = obj;  [obj setWindow:nil];  /* { dg-warning ".Object. may not respond to .\\-setWindow:." } */  /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 20 } */  /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 20 } */  /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 20 } */  [obj2 setWindow:nil]; /* { dg-warning "multiple methods named .\\-setWindow:. found" } */  /* { dg-warning "using .\\-\\(void\\)setWindow:\\(Object \\*\\)wdw." "" { target *-*-* } 10 } */  /* { dg-warning "also found .\\-\\(void\\)setWindow:\\(Class1 \\*\\)window." "" { target *-*-* } 14 } */  return obj;}

⌨️ 快捷键说明

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