Didn't get any bites on this in cfe-dev, hopefully now that 3.1 has
branched I can get a comment or two on this.



This is my first real deep dive into the clang guts, so I am submitting
this patch to the dev list rather than commits so that it can get extra
reviewing and critiquing.

2 Changes:

1) Cursors created from translation unit declarations will now be of kind
CXCursor_TranslationUnit rather than the default CXCursor_UnexposedDecl

2) Cursor created by clang_getTranslationUnitCursor is now created with
MakeCXCursor and includes the translation unit decl.  This ensures that the
cursor returned by clang_getTranslationUnitCursor and
clang_getCursorLexicalParent in the case of a translation unit compare
correctly via clang_equalCursors.  The code to fetch the translation decl
is based on code inside CursorVisitor::VisitChildren.


I did not add any additional tests for this, but did re-run the current
test suite.  If someone could point me toward the best place to add said
tests I would be happy to create some.

Thanks
-Evan

Attachment: clang_lexical_parent.diff
Description: Binary data

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to