| OLD | NEW |
| 1 /* Crash due to descriptionFor(Instance|Class)Method applied to | 1 /* Crash due to descriptionFor(Instance|Class)Method applied to |
| 2 a protocol with no instance/class methods respectively. | 2 a protocol with no instance/class methods respectively. |
| 3 Problem report and original fix by richard@brainstorm.co.uk. */ | 3 Problem report and original fix by richard@brainstorm.co.uk. */ |
| 4 /* { dg-do run } */ | 4 /* { dg-do run } */ |
| 5 /* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } }
} { "-fnext-runtime" } { "" } } */ |
| 6 #include "../objc-obj-c++-shared/Protocol1.h" |
| 7 #include "../objc-obj-c++-shared/Object1.h" |
| 5 #include <objc/objc.h> | 8 #include <objc/objc.h> |
| 6 #include <objc/Object.h> | |
| 7 #include <objc/Protocol.h> | |
| 8 | 9 |
| 9 @protocol NoInstanceMethods | 10 @protocol NoInstanceMethods |
| 10 + testMethod; | 11 + testMethod; |
| 11 @end | 12 @end |
| 12 | 13 |
| 13 @protocol NoClassMethods | 14 @protocol NoClassMethods |
| 14 - testMethod; | 15 - testMethod; |
| 15 @end | 16 @end |
| 16 | 17 |
| 17 int | 18 int |
| 18 main() | 19 main() |
| 19 { | 20 { |
| 20 [@protocol(NoInstanceMethods) descriptionForInstanceMethod: @selector(name)]; | 21 [@protocol(NoInstanceMethods) descriptionForInstanceMethod: @selector(name)]; |
| 21 [@protocol(NoInstanceMethods) descriptionForClassMethod: @selector(name)]; | 22 [@protocol(NoInstanceMethods) descriptionForClassMethod: @selector(name)]; |
| 22 [@protocol(NoClassMethods) descriptionForInstanceMethod: @selector(name)]; | 23 [@protocol(NoClassMethods) descriptionForInstanceMethod: @selector(name)]; |
| 23 [@protocol(NoClassMethods) descriptionForClassMethod: @selector(name)]; | 24 [@protocol(NoClassMethods) descriptionForClassMethod: @selector(name)]; |
| 24 return 0; | 25 return 0; |
| 25 } | 26 } |
| OLD | NEW |