OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [gcc/] [testsuite/] [obj-c++.dg/] [method-13.mm] - Blame information for rev 12

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 12 jlechner
/* Check if finding multiple signatures for a method is handled gracefully.  Author:  Ziemowit Laski   */
2
/* { dg-options "-Wstrict-selector-match" } */
3
/* { dg-do compile } */
4
 
5
#include 
6
 
7
@interface Class1
8
- (void)setWindow:(Object *)wdw;
9
@end
10
 
11
@interface Class2
12
- (void)setWindow:(Class1 *)window;
13
@end
14
 
15
id foo(void) {
16
  Object *obj = [[Object alloc] init];
17
  id obj2 = obj;
18
  [obj setWindow:nil];  /* { dg-warning ".Object. may not respond to .\\-setWindow:." } */
19
       /* { dg-warning "Messages without a matching method signature" "" { target *-*-* } 18 } */
20
       /* { dg-warning "will be assumed to return .id. and accept" "" { target *-*-* } 18 } */
21
       /* { dg-warning ".\.\.\.. as arguments" "" { target *-*-* } 18 } */
22
  [obj2 setWindow:nil]; /* { dg-warning "multiple methods named .\\-setWindow:. found" } */
23
       /* { dg-warning "using .\\-\\(void\\)setWindow:\\(Object \\*\\)wdw." "" { target *-*-* } 8 } */
24
       /* { dg-warning "also found .\\-\\(void\\)setWindow:\\(Class1 \\*\\)window." "" { target *-*-* } 12 } */
25
 
26
  return obj;
27
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.