clang_codeCompleteAt returning invalid completion results

Hello,

I've noticed that clang_codeCompleteAt (using clang 2.9 - unable to upgrade
clang version in my application) is returning invalid completion results,
although the text chunks of those results appear to be valid. The following
is a simple example:
typedef union _myUnionType {
    union {
        int a;
    };
} myUnionType;
void func() {
    myUnionType var;
    var.
}
'var.' is returning a single completion result having a
CXCursor_NotImplemented cursor kind.
Does anybody know if there's any risk in using CXCursor_NotImplemented
completion results?

Thank you!

There is no risk at all. The cursor associated with a completion result is simply to help with the UI for code completion if, e.g., one wants to use a different icon for variables vs. functions.

  - Doug

Hello again! and thank you for your reply, Doug!
So this basically means that CXCursor_NotImplemented completion results are
fine to use, but I cannot distinguish between the types of these results
(e.g. field vs enum)?

Do you know perhaps if I will get something similar to this for other types
of cursors (e.g. variables), or does this only happen for struct/union
fields?

Thank you!

Hello again! and thank you for your reply, Doug!
So this basically means that CXCursor_NotImplemented completion results are
fine to use, but I cannot distinguish between the types of these results
(e.g. field vs enum)?

Correct.

Do you know perhaps if I will get something similar to this for other types
of cursors (e.g. variables), or does this only happen for struct/union
fields?

I have no idea. Clang 2.9 is three major releases and nearly two years old, so I don't recall what bugs it had in this area. I'd expect modern Clang's to provide cursor kinds for most completions.

  - Doug