| #include <stdio.h> | |
| #include <objc/Object.h> | |
| @interface Decode: Object | |
| { | |
| } | |
| - multipleDef; | |
| - (const char *) myDescription; | |
| @end | |
| @implementation Decode | |
| - multipleDef | |
| { | |
| printf("method multipleDef\n"); | |
| return self; | |
| } | |
| - (const char *) myDescription | |
| { | |
| return "Decode gdb test object"; | |
| } | |
| @end | |
| int | |
| multipleDef() | |
| { | |
| printf("function multipleDef\n"); | |
| return 0; | |
| } | |
| int main (int argc, const char *argv[]) | |
| { | |
| id obj; | |
| obj = [Decode new]; | |
| multipleDef(); | |
| [obj multipleDef]; | |
| return 0; | |
| } | |
| const char *_NSPrintForDebugger(id object) | |
| { | |
| /* This is not really what _NSPrintForDebugger should do, but it | |
| is a simple test if gdb can call this function */ | |
| if (object && [object respondsTo: @selector(myDescription)]) | |
| return [object myDescription]; | |
| return NULL; | |
| } |