[cfe-commits] patch for libclang: expose additional information about complex, vector, function, typedef, and enum types; cursor spelling for AsmLabelAttr attributes
Argyrios Kyrtzidis
kyrtzidis at apple.com
Tue Dec 6 14:08:22 PST 2011
Committed in r145972, thanks!
FYI:
> // CHECK: <invalid loc>:0:0: asm label=_foo_ Extent=[1:24 - 1:31]
it's unfortunate that we don't have a location for the asm attribute, I added a FIXME there. Probably it is missing from the AST.
On Nov 20, 2011, at 12:27 PM, Joe Groff wrote:
> Hi everyone. Here's a patch that adds some more functionality to libclang to query various types. I'd like to get some feedback. The patch is against svn revision 145002. It adds the following features:
>
> - Exposes a CXType_Vector type kind for vector types.
> - Adds generalized versions of the clang_getArrayElementType and clang_getArraySize functions, named clang_getElementType and clang_getNumElements, which work on array, vector, or complex types. This was the API change recommended in an earlier thread: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20110926/046899.html . I left the clang_getArray* functions for source compatibility.
> - Adds additional functions for querying function types. clang_isFunctionTypeVariadic returns true if a function type is variadic. clang_getFunctionCallingConv returns an enumeration value indicating the calling convention of the function type. clang_getNumArgTypes returns the number of static argument types, and clang_getArgType gets the type of an argument.
> - Adds a clang_getTypedefDeclUnderlyingType function to get the underlying type from a TypedefDecl cursor.
> - Adds a clang_getEnumDeclIntegerType function to get the integer type from an EnumDecl cursor.
> - Adds clang_getEnumConstantDeclValue and clang_getEnumConstantDeclUnsignedValue functions to get the value of an EnumConstantDecl as a signed or unsigned long long, respectively.
> - Exposes a CXCursor_AsmLabelAttr cursor kind for __asm__("label") attributes.
> - Alters clang_getCursorSpelling to return the label value for AsmLabelAttr-kind cursors.
>
> Let me know if there are any API or functionality changes I should make. Thanks for the feedback.
>
> -Joe
> <145002-libclang-complex-vector-function-enum-type-information.diff>_______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20111206/097e1f47/attachment.html>
More information about the cfe-commits
mailing list