libclang - return types of Objective-C methods not returned

The following program, test.m:

@interface MyObject {
}

+ (int) my_cm:(SEL)aSel;
- (double) my_im:(id)anId;

@end

extern int my_f(double d);

produces the following cursors (using recursion in the visitor). The columns are
the spellings of the cursor, the cursor kind, the cursor type kind and the type
kind of the cursor type's return type.

SEL TypedefDecl Typedef Invalid
SEL TypeRef Typedef Invalid
id TypedefDecl Typedef Invalid
id TypeRef Typedef Invalid
Class TypedefDecl Typedef Invalid
Class TypeRef Typedef Invalid
__builtin_va_list TypedefDecl Typedef Invalid
MyObject ObjCInterfaceDecl ObjCInterface Invalid
my_cm: ObjCClassMethodDecl Invalid Invalid
aSel ParmDecl Typedef Invalid
SEL TypeRef Typedef Invalid
my_im: ObjCInstanceMethodDecl Invalid Invalid
anId ParmDecl Typedef Invalid
id TypeRef Typedef Invalid
my_f FunctionDecl FunctionProto Int
d ParmDecl Double Invalid

Note that the return type of my_f is correctly returned as Int, but the
Objective C methods show an Invalid return type.

I also looked at clang_getOverriddenCursors() just in case, but (as expected)
none are returned for the ObjC methods.

Is there some way which I've missed which can be used to get an Objective-C
method's return type?

Thanks,

Vinay Sajip

Is there some way which I've missed which can be used to get an Objective-C
method's return type?

OK - found clang_getCursorResultType(). I was wrongly using clang_getResultType.

Regards,

Vinay Sajip