History log of /external/clang/include/clang-c/Index.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
aca19be8731fc31cff68702de0dc7f30ce908979 18-Oct-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Index implicit property references.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142355 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4e7064fa7e344e8f87a5b8457e96dfdd252c4a9e 17-Oct-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Introduce a new high level API for indexing clients that assumes
more of the work involved in indexing a translation unit and simplifies client
implementations.

Only C/ObjC for now, C++ (and comments) to come.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142233 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
6164ea1d75385b6fc3c19e5ab9bb686298436a5a 14-Oct-2011 Erik Verbruggen <erikjv@me.com> Added clang_getCompletionAnnotation and clang_getCompletionNumAnnotations to
retrieve annotations from completion string.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5f1c822def3efffe1d8f7299fbbbc3b1cdd4833d 13-Oct-2011 Erik Verbruggen <erikjv@me.com> Allow for annotate attributes after access specifiers. When such
attributes are found, propagate them to subsequent declarations.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141861 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e57ffac6326c20da8f688f937100c03e90b7fabe 06-Oct-2011 Erik Verbruggen <erikjv@me.com> [libclang] Removed accidental addition of CXCursor_AnnotateAttr.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
733dbc805facad7cebec5420f6c47c83848cee5f 06-Oct-2011 Erik Verbruggen <erikjv@me.com> [libclang] Fix symbol export for clang_Range_isNull so MSVC won't complain.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141282 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
d12059673dcef32bc2b6bae5321654d33863afe6 06-Oct-2011 Erik Verbruggen <erikjv@me.com> Added CXAvailability_NotAccessible to indicate that a declaration is available, but not accessible from the current code completion context.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
aed123ec3cc37e457fe20a6158fdadf8849ad916 06-Oct-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Introduce clang_findReferencesInFile which accepts a cursor, a file,
and a callback and finds all identifier references of the cursor in the file.

rdar://7948304

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
42b2984771a7fd1b17c78bbb2c59fed3db2f1960 05-Oct-2011 Douglas Gregor <dgregor@apple.com> Expose more statement, expression, and declaration kinds in libclang,
from Manuel Holtgrewe!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141200 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2dfdb948bef51a601e763191e4becfe59880d382 30-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Introduce CXCursor_CXXAccessSpecifier for C++'s public:/private:/protected: specifiers.

Patch by Paolo Capriotti!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
de5db649fd5f9aedde200f443ad73d62517b1c88 28-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Introduce clang_Range_isNull.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5f0bfc522266f3319c4a6262b016a552de058c7f 27-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Expose array size and element type, patch by Vinay Sajip!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fa865df489fe68668c554dece36c68b4ce03920f 27-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> MSVC is stuck in the 80s.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b0d6eaa6b646c18c49923aefc76973801f561701 27-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Introduce clang_Cursor_isNull and clang_Cursor_getTranslationUnit functions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e6be34d8f77312edf9ed38034e52cb4d22c8e1c1 13-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang] Introduce clang_getPresumedLocation which works like clang_getExpansionLocation
but takes into account #line directives coming from preprocessed files.

Patch by Vinay Sajip!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
6639e9255489ad8e10278d5658fdd4b3c0e1e4cd 13-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [libclang]
-Allow cursor visitation of an attribute using its source range
-Add C++ 'final' and 'override' attributes as cursor kinds
-Simplify the logic that marks 'final' and 'override' attributes as tokens.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139609 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
20174221af145554b76a0b0f5e4eb3ac70d05945 31-Aug-2011 Chandler Carruth <chandlerc@gmail.com> Update libclang to have APIs corresponding to the new 'expansion' naming
system for macro-backed source locations. The old APIs are preserved for
legacy users.

This was intended to land with the main work of instantiation ->
expansion, but despite running it by Doug over a month ago, I forgot to
commit it. Very sorry for that...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b5af843a20e237ad1a13ad66a867e200695b8c8e 26-Aug-2011 Douglas Gregor <dgregor@apple.com> Eliminate the -chained-pch flag and all of the frontend and libclang options associated with it. Chained PCH is the only way to build a PCH file that includes another PCH file

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
8fa0a80b4482ad94e82c4a19e23de17fd69140b5 04-Aug-2011 Douglas Gregor <dgregor@apple.com> Add a new libclang API to return a CXCompletionString for an arbitrary
cursor, from Connor Wakamo! Addresses <rdar://problem/9087798>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136911 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
d1194fbbf65374bfa3578eb40a547e4f97b497d1 27-Jul-2011 Ted Kremenek <kremenek@apple.com> clang_getCXTUResourceUsage: report memory used by HeaderSearch.

This required converting the StringMaps to use a BumpPtrAllocator. I measured the
compile time and saw no observable regression.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136190 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ca7dc2b755eb81ac95121ce1a1f1aa44a4a0fe12 27-Jul-2011 Ted Kremenek <kremenek@apple.com> clang_getCXTUResourceUsage: Report memory used by data structures in SourceManager.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0a47d69af8bda945352997af3da4687a3356096a 26-Jul-2011 Douglas Gregor <dgregor@apple.com> Add new libclang API, clang_codeCompleteGetObjCSelector(), which
provides the partial Objective-C selector used in a code
completion. From Connor Wakamo!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136084 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
48a8d14fc6f064a5297024c2b34733a4080b2efe 26-Jul-2011 Francois Pichet <pichet2000@gmail.com> Fix the MSVC build. 2 problems:
- buildPieces was return a C++ object from inside an extern "C". (MSVC didn't like that)
- clang_getCursorReferenceNameRange was missing a CINDEX_LINKAGE causing a link error.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
430d7a1a621a126a9ffe442ad8987ba02b46dae9 25-Jul-2011 Douglas Gregor <dgregor@apple.com> Added clang_getCursorReferenceNameRange to libclang to to retrieve parts of
a cursor reference, from Erik Verbruggen!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ab4e83b904d81d8ab1f8c594655822a023cad87d 23-Jul-2011 Douglas Gregor <dgregor@apple.com> Extend libclang with clang_equalRanges, from Erik Verbruggen!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e081a61bb0dc546fd623bf259435d17c9a4ea0d5 21-Jul-2011 Douglas Gregor <dgregor@apple.com> New libclang API to expose container type for code completion, from
Connor Wakamo!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135651 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fd14e91dc0ac5db175c4b30af98e7f8adabcb508 14-Jul-2011 Chandler Carruth <chandlerc@gmail.com> Clean up some comments I missed when switching from
NestedMacroInstantiations -> NestedMacroExpansions.

With this change, libclang should be completely converted except for
uses of SourceManger and SourceLocation APIs, and the C bindings for
those APIs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ba7537febdf1bc1cc617e1f1746f2644feba6274 14-Jul-2011 Chandler Carruth <chandlerc@gmail.com> NestedMacroInstantiations -> NestedMacroExpansions

This is switches all the interfaces points (and most of the commenst
/ local variables I saw on my way through) regarding the
NestedMacroInstantiations bit.

The libclang enums corresponding to this state were renamed, but
a legacy enum was added with the old name, and the same value to keep
existing clients working. I've added a documentation blurb for it, but
let me know if there is a canonical way to document legacy elemenst of
the libclang interface.

No functionality changed here, even in tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135141 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
9b2a0ac970a077bdc0bf08c6c682f80ad733c892 14-Jul-2011 Chandler Carruth <chandlerc@gmail.com> Update all of the libclang code corresponding to the preprocessor
MacroInstantiation -> MacroExpansion rename. Internally, everything is
switched.

Introduce a new cursor kind enum with the new name, but retain the old
name as an alias so that we don't break backwards compatibility.

Also update the debug printing routine to use 'macro expansions' as its
explicitly not guaranteed to be stable, and mechanically switch the test
cases over to that.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135140 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
97c337c2bdf3ec53073c7e7dd656aa0dd37ee409 11-Jul-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com> [arcmt] Move the remapping functions to clang-c/Index.h and change 'arcmt_' prefix to 'clang_'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134916 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3da626b4f38eb0350de960d71271ca77af7a9cc8 07-Jul-2011 Douglas Gregor <dgregor@apple.com> Introduce a new libclang aPI function,
clang_codeCompleteGetContexts(), that provides the client with
information about the context in which code completion has occurred
and what kinds of entities make sense as completions at that
point. Patch by Connor Wakamo!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134615 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
39c411fa229b2a6747b92f945d1702ee674d3470 06-Jul-2011 Douglas Gregor <dgregor@apple.com> libclang: Allow callers of clang_saveTranslationUnit() to distinguish
between different classes of errors. Addresses most of
<rdar://problem/9660328>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134495 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
8be80e1e6effd5a333bc70e7f030dc9397d0554e 06-Jul-2011 Douglas Gregor <dgregor@apple.com> Improve the Python bindings for libclang in a few ways, from Eli
Bendersky. Specifically:

* Implemented a new function in libclang: clang_isAttribute

* Fixing TranslationUnit.get_includes to only go through the argument
* buffer when it contains something. This fixed a crash on Windows

* clang_getFileName returns CXString, not char*. Made appropriate
* fixes in cindex.py - now the relevant tests pass and we can see the
* full locations correctly again (previously there was garbage in
* place of the file name)
* Exposed clang_getCursorDisplayName to the python bindings



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
352697a87bca664356f21a838b162084013625ea 04-Jun-2011 Douglas Gregor <dgregor@apple.com> Expose @synthesize and @dynamic via their own cursor kinds in
libclang. Fixes <rdar://problem/9537904>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
211924b563aa31421836cee7655be729ad02733f 12-May-2011 Douglas Gregor <dgregor@apple.com> Add clang_CXXMethod_isVirtual() to libclang, from Erik Verbruggen!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131230 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
dca8ee8b7bc86076916a3a80f553f7a4e98c14af 06-May-2011 Douglas Gregor <dgregor@apple.com> Introduce a new libclang parsing flag,
CXTranslationUnit_NestedMacroInstantiations, which indicates whether
we want to see "nested" macro instantiations (e.g., those that occur
inside other macro instantiations) within the detailed preprocessing
record. Many clients (e.g., those that only care about visible tokens)
don't care about this information, and in code that uses preprocessor
metaprogramming, this information can have a very high cost.

Addresses <rdar://problem/9389320>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5e1db6a434d0e3fe0fbde0bca2ec44552818fb22 04-May-2011 Ted Kremenek <kremenek@apple.com> Enhance clang_getCXTUResourceUsage() to return the amount of memory used by the Preprocessor's bump allocator as well as those from the PreprocessingRecord.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
dd3e5549e3c11e217078938aacf72f042eea5343 04-May-2011 Douglas Gregor <dgregor@apple.com> Introduce a new libclang API, clang_isFileMultipleIncludeGuarded(),
which determines whether a particular file is actually a header that
is intended to be guarded from multiple inclusions within the same
translation unit.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130808 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e9b5f3d4acfc2ad6e8b65a4072464e997dea9ed3 29-Apr-2011 Ted Kremenek <kremenek@apple.com> Enhance clang_getCXTUResourceUsage() to report the sizes of the memory buffers used by PCH.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
f61b831d7f6a15676b07647f507de80324cb7056 28-Apr-2011 Ted Kremenek <kremenek@apple.com> Enhance clang_getCXTUResourceUsage() to report how much memory is used by SourceManager's memory buffers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ba29bd25515fbd99e98ba0fedb9d93617b27609e 28-Apr-2011 Ted Kremenek <kremenek@apple.com> Enhance clang_getCXTUResourceUsage() to report the amount of memory used by ASTContext's side tables.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130383 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
457aaf0692dfb2d9638f383334b81027f637f20c 28-Apr-2011 Ted Kremenek <kremenek@apple.com> Enhance clang_getCXTUResourceUsage() to report the amount of memory used by SourceManager's content cache allocator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
f787002478f09af1741fb0f82a562002e6799c49 20-Apr-2011 Ted Kremenek <kremenek@apple.com> Rename 'CXTUMemoryUsage…' to 'CXTUResourceUsage…'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4e6a3f7310d3d9232877ed6f439247b1054b1e47 19-Apr-2011 Ted Kremenek <kremenek@apple.com> Report memory usage for global code completion results in CXTUMemoryUsage.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
59fc1e55da9c856d1703d3d3ac14a36320d26b30 19-Apr-2011 Ted Kremenek <kremenek@apple.com> Add libclang API to query how much memory is used by a CXTranslationUnit. This is a WIP. Currently we report
the amount used for expressions, types, identifiers, and selectors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
162e1c1b487352434552147967c3dd296ebee2f7 15-Apr-2011 Richard Smith <richard-llvm@metafoo.co.uk> Support for C++11 (non-template) alias declarations.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
d2427ddf00aacdc288c386f3882e0821ca9bd27b 19-Mar-2011 Ted Kremenek <kremenek@apple.com> Add libclang hook 'clang_toggleCrashRecovery()', which provides a mechanism for a client to enable/disable CrashRecovery within libclang function calls.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
87fb9404cd962b78c98947d75d68be1691c4e737 23-Feb-2011 Douglas Gregor <dgregor@apple.com> Mention libclang in the Doxygen documentation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e72fb6f40231a1e8372c7576b69f06f0a1eb28a7 27-Jan-2011 Douglas Gregor <dgregor@apple.com> Add libclang functions to determine the const/volatile/restrict
qualifiers on a CXType. Patch from Stefan Seefeld, test by me.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124377 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5389f48b24937ad7b4093307128b3cbf25235654 30-Dec-2010 David Chisnall <csdavec@swan.ac.uk> Expose Objective-C type encodings of declarations to libclang users. This also adds a method in ASTContext which encodes FunctionDecls using the same encoding format that is used for Objective-C methods.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122639 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3910cfd17fcd99ac80158e625fc63e4784d26435 21-Dec-2010 Douglas Gregor <dgregor@apple.com> Teach clang_getCursorSemanticParent() and
clang_getCursorLexicalParent() to cope with class and function
templates, along with the parent of the translation unit. Fixes PR8761
and PR8766.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
eca099bdb0178d408d4f717c2e9627e0d0e673c6 09-Dec-2010 Ted Kremenek <kremenek@apple.com> Add new libclang hooks for CXCursorSet, a
DenseMap-backed hashtable for doing client-side
management of CXCursors within a set.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
9ce5584553054d0cb934940586aca0186e87fa57 20-Nov-2010 Douglas Gregor <dgregor@apple.com> Implement a simple hash function for libclang cursors

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119876 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1a9d0503b67a499797141af0fd6d315d5045f0ea 20-Nov-2010 Douglas Gregor <dgregor@apple.com> Implement clang_getCanonicalCursor() in libclang, which does the obvious thing.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119874 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
aa5f135f8db82b5e5fb1640fd51f8078e0b2d82d 19-Nov-2010 Douglas Gregor <dgregor@apple.com> Extend the libclang diagnostic API to provide information about the
option name, category ID, and category name corresponding to a diagnostic.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0a90d32523bfe5fa63e11b648686c9699f786d15 18-Nov-2010 Ted Kremenek <kremenek@apple.com> Make definition of CXTranslationUnitImpl private
to libclang.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a60ed47da13393796d8552b9fdca12abbb3eea42 16-Nov-2010 Ted Kremenek <kremenek@apple.com> Change CXTranslationUnit to not directly cast to an ASTUnit*,
but to wrap both an ASTUnit and a "string pool"
that will be used for fast USR generation.

This requires a bunch of mechanical changes, as
there was a ton of code that assumed that CXTranslationUnit
and ASTUnit* were the same.

Along with this change, introduce CXStringBuf,
which provides an llvm::SmallVector<char> backing
for repeatedly generating CXStrings without a huge
amount of malloc() traffic. This requires making
some changes to the representation of CXString
by renaming a few fields (but keeping the size
of the object the same).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119337 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ed122735639d83c10f18c28c7fd117bfcd0f62cb 16-Nov-2010 Ted Kremenek <kremenek@apple.com> Move CXString creation/management routines into
their own .cpp file and make the interpretation
of its flags private.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119319 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a9b06d4c246d6c301e3dd1844f5dba669ed9c631 09-Nov-2010 Douglas Gregor <dgregor@apple.com> ntroduce clang_getSpellingLocation() into libclang, to provide the
location where we're spelling a token even within a
macro. clang_getInstantiationLocation() tells where we instantiated
the macro.

I'm still not thrilled with the CXSourceLocation/CXSourceRange APIs,
since they gloss over macro-instantiation information.

Take 2: this time, adjusted tests appropriately and used a "simple"
approach to the spelling location.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118495 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
27a31fe6fac7eb98ece172bf83af93a3a103f5b4 09-Nov-2010 Douglas Gregor <dgregor@apple.com> Revert r118492, which didn't update all of its tests accordingly

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b6278715de9530aea42ff3f9d4064fb5bed13343 09-Nov-2010 Douglas Gregor <dgregor@apple.com> Introduce clang_getSpellingLocation() into libclang, to provide the
location where we're spelling a token even within a
macro. clang_getInstantiationLocation() tells where we instantiated
the macro.

I'm still not thrilled with the CXSourceLocation/CXSourceRange APIs,
since they gloss over macro-instantiation information.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1ddb02cabd4374bcbe9afdff5123be0be8e32d12 08-Nov-2010 Ted Kremenek <kremenek@apple.com> Clean up some of the comments in Index.h (e.g., misnamed or extra parameters in comments).

Patch by Chris Pick!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
995aaf9c8f0131bef0215a9a0bc794b83a49e0b7 04-Nov-2010 Daniel Dunbar <daniel@zuster.org> libclang: Add clang_executeOnThread, for use in c-index-test (and only there,
preferably). Good thing c-index-test is written in C!!!!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3387c65a094a02b2a94c05111d035a97d3d5c794 03-Nov-2010 David Chisnall <csdavec@swan.ac.uk> Added cursor visitor that takes a block as an argument. Tested compiling
libclang with both clang -fblocks and gcc (no blocks support). Only exposed in
the header to compilers that do have blocks support.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
99ba202f659e1885fa5ee114f97c97cf6a857491 27-Oct-2010 Douglas Gregor <dgregor@apple.com> Introduce libclang-level options for C++ precompiled preambles,
separating out chaining precompiled preambles from non-chaining ones.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ecdcb883cbc6bb4a2445dc6f02d58d9bdb54a0ed 21-Oct-2010 Douglas Gregor <dgregor@apple.com> Extend the preprocessing record and libclang with support for
inclusion directives, keeping track of every #include, #import,
etc. in the translation unit. We keep track of the source location and
kind of the inclusion, how the file name was spelled, and the
underlying file to which the inclusion resolved.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
83889a7f1f338e343ef72aeeef9c27f7b62c0f0f 15-Oct-2010 David Chisnall <csdavec@swan.ac.uk> Add clang_getLocationForOffset() to libclang, for gives a source location from a character index into a file.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e0cc52ef8afc8d1cba9c534191b5f0ddaff1d694 11-Oct-2010 Douglas Gregor <dgregor@apple.com> Eliminate clang_codeComplete(). libclang clients should be using the
faster, in-process, more-configurable clang_codeCompleteAt().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116245 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b10daedb8fc4c6f70a66dbc1a6eea01684bb4e77 11-Oct-2010 Douglas Gregor <dgregor@apple.com> Eliminate clang_setUseExternalASTGeneration() from libclang. Between
improvements to the compiler and the introduction of crash recovery,
it no longer makes sense to allow this mode. Moreover, this eliminates
one use of the "clang" executable from within libclang; we'd like them
all to go away.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
358559d8d7b458c5f64941842383a16e61f0828d 03-Oct-2010 Douglas Gregor <dgregor@apple.com> Introduce a new libclang function, clang_getCursorDisplayName(), which
produces a simple "display" name that captures the
arguments/parameters for a function, function template, class
template, or class template specialization.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
9f59234a91d057cee7c5e3cee91da8696858c692 01-Oct-2010 Douglas Gregor <dgregor@apple.com> Extend libclang with an API that determines, given a C++ virtual
member function or an Objective-C method, which other member
functions/methods it overrides.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2be5bc9ad3981347a000742f81b91ab3080f1214 22-Sep-2010 Douglas Gregor <dgregor@apple.com> Implement libclang API functions for retrieving the lexical and
semantic parents of the given cursor.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1f60d9ea523fc321d811fe880ba9a1ec74fa8f9b 14-Sep-2010 Douglas Gregor <dgregor@apple.com> Introduce a new kind of cursor into libclang, which covers a reference
to an "overloaded" set of declarations. This cursor kind works for
unresolved references to functions/templates (e.g., a call within a
template), using declarations, and Objective-C class and protocol
forward declarations.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
36897b05ca2886e287f01802614bc10cbadcec22 10-Sep-2010 Douglas Gregor <dgregor@apple.com> Add libclang support for label statements, gotos, and taking the
address of a label (GNU extension).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a67e03fdf1ae8a1f92463a307d0b6281f1161f40 09-Sep-2010 Douglas Gregor <dgregor@apple.com> Teach libclang to walk the base and member initializers of a
constructor, in source order. Also introduces a new reference kind for
class members, which is used here (for member initializers) and will
also be used for designated initializers and offsetof.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113545 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e0329acf5c9437e2086a2fb2bf7a95ae2ac96505 02-Sep-2010 Douglas Gregor <dgregor@apple.com> Introduce a new libclang function,
clang_getSpecializedCursorTemplate(), which determines the template
(or member thereof) that the given cursor specializes or from which it
was instantiated. This routine can be used to establish a link between
templates and their instantiations/specializations.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112780 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7e24256c95afb64b4d5abf201a0f9f0527cb4cf3 01-Sep-2010 Douglas Gregor <dgregor@apple.com> Implement libclang support for using declarations. Clang actually uses
three different kinds of AST nodes to represent using declarations:
UsingDecl, UnresolvedUsingValueDecl, and
UnresolvedUsingTypenameDecl. These three are collapsed into a single
cursor kind for using declarations, since libclang clients don't need
the distinction.

Several related changes here:
- Cursor visitation of the three AST nodes for using declarations
- Proper source-range computation for these AST nodes
- Using declarations have no USRs, since they don't actually declare
any entities.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112730 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2ef6944d529c94824f5bf96f65665f5bee30f5a2 01-Sep-2010 Douglas Gregor <dgregor@apple.com> Make it clear that libclang does not modify the command-line arguments
it is given.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112717 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0a35bceb7768fc0be62cb644a4e31d8bfd9fb44a 01-Sep-2010 Douglas Gregor <dgregor@apple.com> Implement libclang support for using directives (cursor + visitation +
suppressing USRs). Also, fix up the source location information for
using directives so that the declaration location refers to the
namespace name.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112693 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
6931900f43cea558c6974075256c07728dbfecc6 01-Sep-2010 Douglas Gregor <dgregor@apple.com> Add libclang support for namespace aliases (visitation + USRs) along
with a new cursor kind for a reference to a namespace.

There's still some oddities in the source location information for
NamespaceAliasDecl that I'll address with a separate commit, so the
source locations displayed in the load-namespaces.cpp test will
change.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
49f6f5489483beaffc7ce48dfc000af4e65b9216 01-Sep-2010 Douglas Gregor <dgregor@apple.com> Add a new libclang function clang_getTemplateCursorKind(), which
determines the kind of declaration that would be generated if the
given template were instantiated. This allows a client to distinguish
among class/struct/union templates and function/member function/static
member function templates.

Also, teach clang_CXXMethod_isStatic() about function templates.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0b36e614aa19df72885d5e0de996f7fbb9874ec3 31-Aug-2010 Douglas Gregor <dgregor@apple.com> Extend libclang with a new cursor kind that indicates a reference to a
template. Such cursors occur, for example, in template specialization
types such as vector<int>. Note that we do not handle the
super-interesting case where the template name is unresolved, e.g.,
within a template.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
74dbe640021d96a8dbb85c592471c04449ade81c 31-Aug-2010 Douglas Gregor <dgregor@apple.com> Add libclang support for class template partial specializations,
including a cursor kind, visitation, and USRs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112629 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
39d6f07b056c31e1e6b5946165ed4b23e7887f22 31-Aug-2010 Douglas Gregor <dgregor@apple.com> Add a libclang cursor kind, visitation support and USR support for C++
class templates.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fe72e9ceeae6cc8669cd8bb722425300190638ea 31-Aug-2010 Douglas Gregor <dgregor@apple.com> Implement basic support for indexing function templates in
libclang. This includes:
- Cursor kind for function templates, with visitation logic
- Cursor kinds for template parameters, with visitation logic
- Visitation logic for template specialization types, qualified type
locations
- USR generation for function templates, template specialization
types, template parameter types.

Also happens to fix PR7804, which I tripped across while testing.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112604 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
01829d3afafdfd355cbe93537bc408aeeed964c6 31-Aug-2010 Douglas Gregor <dgregor@apple.com> libclang indexing support for C++ constructors, destructors, and
conversion functions. This introduces new cursor kinds for these three
C++ entities, and reworks visitation of function declarations so that
we get type-source information for the names.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3064ef9e604d19a0cfd0d8e3ed3055bfd83f88fd 27-Aug-2010 Ted Kremenek <kremenek@apple.com> Implement CXCursor support for walking C++ base specifiers. This includes adding the API hooks clang_isVirtualBase() and clang_getCXXAccessSpecifier() to query properties of the base specifier.

Implements <rdar://problem/8274883>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112296 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ad72f4dad4cf0fd2b71eb8f4704d2fe7ac58fb44 27-Aug-2010 Ted Kremenek <kremenek@apple.com> Fix copy-paste in doxygen comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1e5e6684b0f27701e6f7c65f8c6a32a10cbcc3ed 26-Aug-2010 Douglas Gregor <dgregor@apple.com> Move the sorting of code-completion results out of the main path and
into the clients, e.g., the printing code-completion consumer and
c-index-test. Clients may want to re-sort the results anyway.

Provide a libclang function that sorts the results.

3rd try. How embarrassing.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112180 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1cb237fbf9e52e17f1e03b6f80c1114f47f93781 26-Aug-2010 Daniel Dunbar <daniel@zuster.org> Revert r112149, "Move the sorting of code-completion results out of the main
path and ...", it is failing tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112161 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
be13afea6d9a5dc8877d5553552bd07c733a99bf 26-Aug-2010 Douglas Gregor <dgregor@apple.com> Move the sorting of code-completion results out of the main path and
into the clients, e.g., the printing code-completion consumer and
c-index-test. Clients may want to re-sort the results anyway.

Provide a libclang function that sorts the results.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
95f33555a6d51b6537a9ed3968c3d1c2e4991b51 26-Aug-2010 Ted Kremenek <kremenek@apple.com> Add libclang API hook "clang_getIBOutletCollectionType" to query the collection type for iboutletcollection attributes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112139 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
076c22a99ed82e11b59e8fbf57d8467ceb3fec77 24-Aug-2010 Peter Collingbourne <peter@pcc.me.uk> Silence warning about C++-style comments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111875 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
58ddb60f409125eda5436c4a1f070f7fa4744295 24-Aug-2010 Douglas Gregor <dgregor@apple.com> Introduce new libclang API functions that determine the availability
of a cursor or code-completion result, e.g., whether that result
refers to an unavailable, deleted, or deprecated declaration.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111858 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1999844e7a18786e61e619e1dc6c789827541863 13-Aug-2010 Douglas Gregor <dgregor@apple.com> Add an options parameter to clang_saveTranslationUnit, because we'll want it later

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7ae2faafd30524ef5f863bb3b8701977888839bb 13-Aug-2010 Douglas Gregor <dgregor@apple.com> Implement clang_saveTranslationUnit(), which saves a translation unit
into a PCH/AST file.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111006 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e1e13bf568a7e37c95eda6fcfa626659a06e67b1 11-Aug-2010 Douglas Gregor <dgregor@apple.com> Add a (currently unused) "options" parameter to
clang_reparseTranslationUnit(), along with a function to retrieve the
default recommended reparsing options for a translation unit.

Also, add the CXTranslationUnit_CacheCompletionResults flag, which is
also currently unused.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b1c031be513705d924038f497279b9b599868ba1 10-Aug-2010 Douglas Gregor <dgregor@apple.com> Instead of having a specific CXTranslationUnit_* option flag for
"editing" mode, introduce a separate function
clang_defaultEditingTranslationUnitOptions() that retrieves the set of
options. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110613 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
df95a13ec73d2cdaea79555cb412d767f4963120 09-Aug-2010 Douglas Gregor <dgregor@apple.com> Use precompiled preambles for in-process code completion.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
cee235cdf0b8047761ffac598c4c3a32ab7411a2 05-Aug-2010 Douglas Gregor <dgregor@apple.com> Give clang_codeCompleteAt() an "options" parameter, and add a new
flags enumeration + default-generating function that allows
code-completion to be customized via the libclang API.

Plus, turn on spell-checking when performing code completion.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110319 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1abc6bca3d7fb0e7b1e40fbcad6cfb5e10594548 04-Aug-2010 Douglas Gregor <dgregor@apple.com> Add code-completion support directly to ASTUnit, which performs code
completion within the translation unit using the same command-line
arguments for parsing the translation unit. Eventually, we'll reuse
the precompiled preamble to improve code-completion performance, and
this also gives us a place to cache results.

Expose this function via the new libclang function
clang_codeCompleteAt(), which performs the code completion within a
CXTranslationUnit. The completion occurs in-process
(clang_codeCompletion() runs code completion out-of-process).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3ce9e7d270e7df86c09c8126b4412d55be7c123b 30-Jul-2010 Ted Kremenek <kremenek@apple.com> Add clang_isPODType() for querying if the CXType is POD. Implements <rdar://problem/8250669>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109822 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
44c181aec37789f25f6c15543c164416f72e562a 23-Jul-2010 Douglas Gregor <dgregor@apple.com> Basic plumbing for generating a precompiled preamble for an
ASTUnit/CXTranslationUnit. We can't actually use this preamble yet,
however.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5a43021ac491bf091494167127772a20d9a9bb48 21-Jul-2010 Douglas Gregor <dgregor@apple.com> Introduce a new C API function, clang_parseTranslationUnit(), which
will eventually replace
clang_createTranslationUnitFromSourceFile(). The only addition in
clang_parseTranslationUnit() is a set of flags that can control how
the translation unit is loaded. More interesting flags will be coming.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109027 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
abc563f554951259bbe0315055cad92ee14d87e4 19-Jul-2010 Douglas Gregor <dgregor@apple.com> Introduce a new libclang API, clang_reparseTranslationUnit(), which
reparses an already-parsed translation unit. At the moment it's just a
convenience function, but we hope to use it for performance
optimizations.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
9a140845438c2fc31e7d48a6dedbc695f4c83c68 21-Jun-2010 Ted Kremenek <kremenek@apple.com> Add CXType support for querying the return type of Objective-C methods. This is done by
adding a clang_getCursorResultType() function (which complements clang_getResultType()).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
04c3cf35a80c09ab78e519f2e71ecccd5c5d8da0 21-Jun-2010 Ted Kremenek <kremenek@apple.com> Add CXType support for FunctionNoProto and FunctionProto types. This includes adding a new
function, clang_getResultType(), which returns the result type of the function type.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106459 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a7f1c008d37927a2ffc55a95830b42762db24843 27-May-2010 Ted Kremenek <kremenek@apple.com> Remove clang_isFromMainFile(). It doesn't work correctly with CXDiagnostics, and we shouldn't
have an API around that cannot be implemented correctly yet.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104849 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
12e131385e892e3723483a1081a89bcad29c8a84 27-May-2010 Douglas Gregor <dgregor@apple.com> Introduce priorities into the code-completion results.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104751 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
47e8e399d25a976345a7bf07dc6c5b5fcb811740 20-May-2010 Ted Kremenek <kremenek@apple.com> Add libclang function 'clang_isFromMainFile()' (which just wraps SourceManager::isFromMainFile()).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104208 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
50aa6acd0b8d40c8956372a69e0a73f0802a5494 19-May-2010 Ted Kremenek <kremenek@apple.com> Move CXCursor_FirstDecl definition later to make the results more readable in the debugger.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104171 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2bb106eeba7def5364a0e6c4d99541370c4950a5 19-May-2010 Ted Kremenek <kremenek@apple.com> Remove clang_isDeclarationADefinition() since its functionality is already provided by clang_isCursorDefinition().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
857e918a8a40deb128840308a318bf623d68295f 19-May-2010 Ted Kremenek <kremenek@apple.com> Add clang support for IBOutletCollection.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104135 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b12903e1a4b8d1b611b8c7e4f910665d628e68cd 19-May-2010 Ted Kremenek <kremenek@apple.com> Add function 'clang_isTagDeclDefinition()' to allow clients of libclang to distinguish between
forward declarations and definitions of structs/classes/enums.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
9ada39a4ac82ff5f5087b0a7fa9ed0d32be55a3b 17-May-2010 Ted Kremenek <kremenek@apple.com> Add libclang function 'clang_CXXMethod_isStatic' to query of a C++ method
is declared static.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
8e0ac174c8c8c980927b3e1447f16f62fbe2a2e4 14-May-2010 Ted Kremenek <kremenek@apple.com> Add CXType and an initial set of supporting functions to libclang. This exposes details of
Clang's representation of the C type system to clients. It is nowhere near complete, and will
be expanded on demand.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a0536d8dd900bb48ea886bd68d777b03b061c068 07-May-2010 Ted Kremenek <kremenek@apple.com> Add CXCursor support for LinkageSpecDecl (e.g., 'extern "C"').

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103224 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
8f06e0e9fec3ca501e5fb129f413adbfc88e82f8 07-May-2010 Ted Kremenek <kremenek@apple.com> Add CXCursor support for C++ namespaces.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103211 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
6cd1e7cb04d1da66e8b5675062152ff60bbc354f 14-Apr-2010 Ted Kremenek <kremenek@apple.com> Make CXLanguage_Invalid the first enum value (with '0' as its value) in CXLanguageKind.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101287 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
8bd5a69999cfd06b6b5a58fdd04e4f802b2df5a4 14-Apr-2010 Ted Kremenek <kremenek@apple.com> Add cursor kind for C++ methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
45e1dae500bba7a9ef5b8206263a5609c07c6f03 12-Apr-2010 Ted Kremenek <kremenek@apple.com> Add 'clang_getCursorLanguage' to return the "language" of the AST element (e.g., distinguish between C and Objective-C language features). Currently this only returns results for declarations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
c6f530defd937faa1c00998e60deea6368526961 12-Apr-2010 Ted Kremenek <kremenek@apple.com> Update doxygen comments about lifetime requirements of CXUnsaveFile data arguments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101054 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1ee6cad59f017601ea54fbb4f62a6e8d69897e3e 11-Apr-2010 Ted Kremenek <kremenek@apple.com> Add CIndex support for blocks.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ebfa339321f8a4df9d5011e591a615d5765107d5 19-Mar-2010 Ted Kremenek <kremenek@apple.com> Make the CIndex API more resilient to being used on invalid code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98981 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
572feb2a190b5e8b04fb06c4ac50ee0f61e93ff0 18-Mar-2010 Douglas Gregor <dgregor@apple.com> Expose macro definitions as CIndex cursors. These can still only be
generated by clang_annotateTokens().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98837 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4807231938d8aff28de09f78f301f9ba5845e5e4 18-Mar-2010 Douglas Gregor <dgregor@apple.com> More token-annotation experimentation, preprocessing the annotated
token sequence to detect macro instantiations (that produce at least
token). WIP.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98826 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
9f1e3ff3b3095967e2b92b57a53524e2d6bb141c 18-Mar-2010 Douglas Gregor <dgregor@apple.com> Experimental stab at using relexing to identify preprocessor
directives while annotating tokens in CIndex. This functionality
should probably be factored out of this routine, but we're not there
yet.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
66ccaec73706f3623d2e7d191fe2c944feedcc2b 15-Mar-2010 Ted Kremenek <kremenek@apple.com> Rename clang_constructUSR_ObjCategory to clang_constructUSR_ObjCCategory.
(there was a missing 'C').

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98554 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
896b70ffc348f6e2c680b5fb5841984d5785b7b5 13-Mar-2010 Ted Kremenek <kremenek@apple.com> Implement several CIndex functions for constructing USRs from C-strings instead of AST elements.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ad6eff611a4391f89fd6c458db16993f76e7f5d0 08-Mar-2010 Ted Kremenek <kremenek@apple.com> Implement clang_isUnexposed(), a predicate function to simplify filtering out
unexposed AST elements.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
16b4259aecaa22b642d35d36fd89965ed700c1e0 03-Mar-2010 Ted Kremenek <kremenek@apple.com> Add clang_getCursorLinkage(), which returns the
underlying linkage for the entity referred to by a
CXCursor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
c8dfe5ece04e683106eb96c58a2999f70b53ac21 27-Feb-2010 Douglas Gregor <dgregor@apple.com> When given unsaved files in clang_createTranslationUnitFromSourceFile,
copy the source buffers provided rather than referencing them
directly, so that the caller can free those buffers immediately after
calling clang_createTranslationUnitFromSourceFile(). Otherwise, we
risk hitting those buffers later (when building source ranges, forming
diagnostics, etc.).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97296 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
274f1906f12ebf8fcc179701deeda6d3271120c1 23-Feb-2010 Douglas Gregor <dgregor@apple.com> Rework the CIndex API for displaying diagnostics. Instead of printing
the diagnostics to a FILE*, return a CXString containing the formatted
diagnostic.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
473d7019bb54f8a2f0140dca9e9644a935cc6b20 19-Feb-2010 Douglas Gregor <dgregor@apple.com> Simplify the CIndex fix-it API, now that we have half-open CXSourceRanges.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96685 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0a812cf707da15dadd19fdeb0178b9707f4e01a6 19-Feb-2010 Douglas Gregor <dgregor@apple.com> Re-apply my diagnostics-capture patch for CIndex, with some tweaks to
try to address the msvc failures.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96624 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
436f3f0400c633251e4071f81358c47bab964adf 18-Feb-2010 Douglas Gregor <dgregor@apple.com> Revert my CIndex diagnostic changes (r96603, 96606, 96607), which were
breaking the msvc9 builder for unknown reasons.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96618 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b9c8a24d04d5e5b3107656d8e03e21d3816c081e 18-Feb-2010 Douglas Gregor <dgregor@apple.com> Introduce debugging/testing hook clang_enableStackTraces() into
CIndex, so that c-index-test to use it to call
lvm::sys::PrintStackTraceOnErrorSignal().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96607 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b2710713377f3b900a92ab69c4cf091f560a5cfb 18-Feb-2010 Douglas Gregor <dgregor@apple.com> Resurrect the displayDiagnostics parameter to clang_createIndex(), and
display captured diagnostics when we can't return an invalid
CXTranslationUnit.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96606 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4c58923ca904733d588ddb1cec58549b6bc7dfa9 18-Feb-2010 Douglas Gregor <dgregor@apple.com> Introduce CIndex API functions for displaying a diagnostic, with some
knobs to control formatting. Eventually, I'd like to merge the
implementation of this code with the TextDiagnosticPrinter, so that
it's easy for CIndex clients to produce beautiful diagnostics like the
clang compiler does.

Use this new function to display diagnostics within c-index-test.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a88084b78fd4ca5d3d858c14b02414f8cc399f02 18-Feb-2010 Douglas Gregor <dgregor@apple.com> Rework how CIndex handles diagnostics. Rather than using a callback,
we attach diagnostics to translation units and code-completion
results, so they can be queried at any time.

To facilitate this, the new StoredDiagnostic class stores a diagnostic
in a serializable/deserializable form, and ASTUnit knows how to
capture diagnostics in this stored form. CIndex's CXDiagnostic is a
thin wrapper around StoredDiagnostic, providing a C interface to
stored or de-serialized diagnostics.

I've XFAIL'd one test case temporarily, because currently we end up
storing diagnostics in an ASTUnit that's never returned to the user
(because it contains errors). I'll introduce a temporary fix for this
soon; the real fix will be to allow us to return and query invalid ASTs.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e77f443dbca8cdc23e5aa94a2653367e4a7cbe47 18-Feb-2010 Ted Kremenek <kremenek@apple.com> Start adding cursor kinds for attributes, with first exposing
IBActionAttr and IBOutletAttr respectively.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96563 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
71570182471d502a97f7f175aa527152544c75f2 17-Feb-2010 Daniel Dunbar <daniel@zuster.org> Fix comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2ef6f8f5a35a60870594c5b04e0aa2bf22c6886f 17-Feb-2010 Ted Kremenek <kremenek@apple.com> Convert clang_getCompletionChunkText() to return a CXString.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96439 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e68fff6fc083c6270d835216a3de0b82c6ef0310 17-Feb-2010 Ted Kremenek <kremenek@apple.com> Change clang_getCursorKindSpelling() to return a CXString
instead of a 'const char *'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96425 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
74844072411bae91d5dbb89955d200cbe1e0a1c8 17-Feb-2010 Ted Kremenek <kremenek@apple.com> Change clang_getFileName() to return a 'CXString' instead of 'const char *'.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96424 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
d52864bd33c66aacc84133460d8c9c0dfcdd5c18 14-Feb-2010 Daniel Dunbar <daniel@zuster.org> CIndex: Switch CXSourceRange to proper half-open intervals.
- Doug, please review.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96162 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a2a9d6e4e5b6001b86b7dfc5db1ea296ce29a3d3 12-Feb-2010 Ted Kremenek <kremenek@apple.com> Make the following functions thread-safe but having them return an std::string that is reconstructed
every time they are called:

getClangRevision()
getClangFullRepositoryVersion()
getClangFullVersion()

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a3890baf1256ff26081306c7fef70202f8223f41 09-Feb-2010 Douglas Gregor <dgregor@apple.com> Clean up the CIndex interface to diagnostic ranges. Thanks, Daniel!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0087e1a12b67b6bb032a72ea485a863daeccf55b 09-Feb-2010 Douglas Gregor <dgregor@apple.com> Note that a CXIndex cannot be destroyed until after all of its translation units have been destroyed

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
936ea3b590117d2cd73b1b92621d06c4a7edbe60 28-Jan-2010 Douglas Gregor <dgregor@apple.com> Switch the remaining diagnostic printing in CIndex over to the
diagnostic callback mechanism, so all diagnostics now go through that
callback. Also, eliminate the displayDiagnostics flag to
clang_createIndex(), since it is no longer necessary: the client
determines whether to display diagnostics or not.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5352ac06d8f6194825bb2a99ffa009b61bafb503 28-Jan-2010 Douglas Gregor <dgregor@apple.com> Implement a diagnostics callback for the C interface to Clang, so that
clients can format diagnostics as they wish rather than having to
parse standard error. All of the important parts of the front end's
diagnostics are exposed: text, severity, location, source ranges, and
fix-its. The diagnostics callback is now available with
clang_createTranslationUnitFromSource() and
clang_createTranslationUnit().

As part of this change, CXSourceLocation and CXSourceRange got one
pointer larger, since we need to hold on to the SourceManager and
LangOptions structures in the source location. This is the minimum
amount of information needed for the functions that operate on source
locations and ranges (as implemented now). Previously we held on to
the ASTContext, but the diagnostics callback can end up with source
locations when there is no ASTContext (or preprocessor).

Still to do:
- Code completion needs to support the diagnostics callback, once we
have the ability to (de-)serialize diagnostics.
- Eliminate the "displayDiagnostics" argument to createIndex; we'll
always pass diagnostics to the callback and let it deal with display.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
16b55a71695a33c094383295cc7b7a2080e098da 26-Jan-2010 Ted Kremenek <kremenek@apple.com> Implement 'clang_getInclusions()' in CIndex. This API allows clients to walk the set of files included in a translation unit via the C API.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
46766dc31c09d89024de5aba9e22112a56eadbdf 26-Jan-2010 Douglas Gregor <dgregor@apple.com> Eliminate clang_getInstantiationLocationOffset(), and instead add an
offset parameter to clang_getInstantiationLocation().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94573 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0045e9fe1f7dfc37f1ea7bdb9b70bcdb6700f0c0 26-Jan-2010 Douglas Gregor <dgregor@apple.com> Implement clang_annotateTokens(), which associates cursors with each
of the tokens within a raw token stream. This does not even attempt to
handle macros yet.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fc8ea23eb6cbaaa5046f2abb4c033e24c8659efd 26-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce a CIndex API for lexing the raw tokens within a given source
range. The token-annotation function does nothing, yet.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94551 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e69517ce61638f12c9abe4605753a45275ac4e37 26-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce clang_getInstantiationLocationOffset(), which decomposes a
source location in file + offset.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94497 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fd9f23464bfd35314c87c4df410f3937d59eb96d 25-Jan-2010 Daniel Dunbar <daniel@zuster.org> Update comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94393 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a57259e9d7b30bcce93f0a62eee0488738026172 24-Jan-2010 Daniel Dunbar <daniel@zuster.org> Tweak clang_visitChildren comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1efcf3d137c11fb6b21c385911e0d2ca59ca94c3 24-Jan-2010 Daniel Dunbar <daniel@zuster.org> Index.h: Tweak comments, delete trailing whitespace, fix a few typos, etc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94351 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
23e1ad09bb68f929212e0ff51206258d06e7f6cf 23-Jan-2010 Ted Kremenek <kremenek@apple.com> Add doxygen comment to clang_getClangVersion().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4db64a461cb3442934afe43c83ed3f17f7c11c1d 23-Jan-2010 Douglas Gregor <dgregor@apple.com> Extend clang_createTranslationUnitFromSourceFile() to support creating
translation units that include unsaved files.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
04bb716aea8fd2372ac10b0c640cabc5e5caa615 22-Jan-2010 Ted Kremenek <kremenek@apple.com> Add 'clang_getClangVersion()' function to CIndex. This exposes the full Clang version string through the CIndex API.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94242 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
c42fefa51f7555bb3644a7cde2ca4bfd0d848d74 22-Jan-2010 Douglas Gregor <dgregor@apple.com> Improve content and structure of the Doxygen documentation for the
CIndex API. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94234 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b979034b100be14de2223f2b8f6cc7a3275cbe4f 22-Jan-2010 Douglas Gregor <dgregor@apple.com> Yet more CIndex API cleanup:
- Added more routines to manipulate/compare source locations and ranges
- Switched clang_getCursor() over to take a CXSourceLocation rather
than file/line/column.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94226 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7d0d40e58807f73e06ff5eb637a48e9f978b0e2a 21-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce type references into the C API, capturing references to
typedefs only (for now).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b2cd48756119f4d8d2a865b4b3e0e8efd02e26a0 21-Jan-2010 Douglas Gregor <dgregor@apple.com> Stash a CXXUnit pointer into each cursor. This allows us to simplify
the interface to clang_visitChildren() by eliminating the
CXTranslationUnit pointer.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94051 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
f55254472e496340cbb4f0a24cff398e441475b5 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Yet more Doxygen-comment tweaking in the CIndex library.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7f17376e0931a337d544b75d9030bc92763be287 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Improve Doxygen documentation for the CIndex library, somewhat.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
04d1dd476af585e2b463633b3c24ee6c3f74daf4 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill CXEntity and CXDecl. The first has never been used, while the
second has been wholly replaced by cursors.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94039 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
78205d4bada39d95097e766af9eb30cdd0159461 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill some CXDecl-related APIs that have been superceded by
CXCursor-based APIs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
68372aa4c575e0fede8c6b876683d28a7acaf9e3 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill CXStmt. It isn't being used anywhere, and has no future.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94036 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
002a528ab0189fc60cfbf9328962c96ccbe567ee 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill clang_loadDeclaration() and clang_loadTranslationUnit().



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94034 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b1373d03e4e38620647311bb87e56c0cf7cffeb7 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce a new, cursor-based traversal function that visits the
children of a given cursor, regardless of what kind of cursor it
is. This is a generalization of clang_loadDeclaration and
clang_loadTranslationUnit that will also extent to statements,
expressions, etc.

As proof-of-concept, switched clang_loadDeclaration() from its own
visitor over to an instance of this traversal function internally.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94022 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
20d416c36b46dd19ee0b1ea2d0266ae43be86e51 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Attempt to improve CIndex Doxygen organization, although I can't actually test this locally

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93961 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e0356b10832390d5f44b3dc7ad4e6e104ebad556 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill off clang_getDeclColumn, clang_getDeclExtent, clang_getDeclLine,
clang_getDeclSource, and clang_getDeclSourceFile; the cursor
equivalents are the way of the future.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93955 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7eaa8ae8692c5cd3eed8cb334fe5346470522091 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce a special cursor kind for the translation unit, to serve as
the root of the conceptual cursor hierarchy (just like we do with
declarations). This will be used when we get to unify
clang_loadTranslationUnit() and clang_loadDeclaration() into something
more generally useful.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93954 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
36103f4d8b79f5e88f359c1fbff13586979866ef 20-Jan-2010 Douglas Gregor <dgregor@apple.com> CXCursor_UnexposedDecl to the first declaration kind

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e0ca4baa1da58a22bdeb39871535507143ce9079 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill CXCursor_ObjCSelectorRef, CXCursor_VarRef, CXCursor_FunctionRef,
and CXCursor_EnumConstantRef; they've been subsumed by expression
references, which do a much nicer job.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
97b9872d5775446cb8aca1380e437649fe848d91 20-Jan-2010 Douglas Gregor <dgregor@apple.com> Extend the CIndex API with direct support for expressions and
statements, moving some of the more unnatural kinds of references
(VarRef, EnumConstantRef, etc.) over to the expressions. We can now
poke at arbitrary expressions and statements with, e.g.,
clang_getCursor() and get back useful information (e.g., source
ranges).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e8c7043f6c11aa8e2420b97046f7dbcb6d7e51ab 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill the unused and unnecessary CXCursor_MemberRef, twin to the
now-dead CXCursor_ObjCIvarRef.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5a5ec3a318c700eab5ffc53217af18a619f22dd4 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Kill CXCursor_ObjCIvarRef. Such cursors could never be created, and
have been marked for death for a while.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93927 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
301221313be4f97327e931ead9794dd3a8bce160 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce the notion of an "unexposed" declaration into the CIndex
API. This is a catch-all for any declaration known to Clang but not
specifically part of the CIndex API. We'll use the same approach with
expressions, statements, references, etc., as needed.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93924 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1db19dea8d221f27be46332d668d1e2decb7f1ab 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Rework the CXSourceLocation and CXSourceRange APIs. They are now
opaque data structures accessed through the new functions
clang_getInstantiationLocation(), clang_getRangeStart(), and
clang_getRangeEnd(). The new API permits later extensions to introduce
new functions to allow CIndex clients to walk macro instantiations, if
we ever care.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b699866820102a69d83d6ac6941985c5ef4e8c40 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Eliminate cursor kinds used to express definitions. Instead, provide
CIndex functions that (1) map from a reference or declaration to the
corresponding definition, if available, and (2) determine whether a
given declaration cursor is also a definition. This eliminates a lot
of duplication in the cursor kinds, and maps more closely to the Clang
ASTs.

This is another API + ABI breaker with no deprecation. Yay, progress.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
c5d1e9375d71e66d22456e7cc52cc7c0a5c65c3f 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce clang_getCursorReferenced, to get a cursor pointing at the
entity that a particular cursor references.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
a7bde20f8c6334ccc3a7ef4dd77243d0921a8497 19-Jan-2010 Douglas Gregor <dgregor@apple.com> Implement clang_getCursorExtent, which provides a source range for the
cursor itself. In particular, for references this returns the source
range of the reference rather than the source range of the thing it
refers to.

Switch c-index-test from clang_getDeclExtent (which will eventually be
deprecated and removed) over to clang_getCursorExtent. The source
ranges we print for references now make sense; fix up the tests
appropriately.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
547836fad9066cfe03123f43c26b8ef1eec04060 18-Jan-2010 Douglas Gregor <dgregor@apple.com> Now that a reasonable deprecation cycle has passed, kill
clang_getCursorLine(), clang_getCursorColumn(),
clang_getCursorSource(), and clang_getCursorSourceFile() outright.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93801 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
98258afae66bab39b0c57a3efb6b20d4fbb5746c 18-Jan-2010 Douglas Gregor <dgregor@apple.com> Introduce clang_getCursorLocation(), which supercedes
clang_getCursorLine(), clang_getCursorColumn(),
clang_getCursorSource(), and clang_getCursorSourceFile(). Mark those 4
functions as deprecated and stop using them ourselves.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93800 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3c7313d96cd4a18cd8c1fcd3ddd8128c2fcbe58f 18-Jan-2010 Douglas Gregor <dgregor@apple.com> Clean up the CIndex API slightly.

Renamed CXSourceFileLine to CXSourceLocation and added a CXFile, to
better match Clang's SourceLocation. Teach clang_getDeclExtent to fill
in the CXFile properly.

Renamed CXSourceExtent to CXSourceRange, to better match Clang's
SourceLocation.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
cf84aa46def41cccf4dd4c51cd0543b70c11e4eb 18-Jan-2010 Ted Kremenek <kremenek@apple.com> Replace clang_getDeclUSR() with clang_getCursorUSR(). Also remove printing 'contexts' from c-index-test output; it wasn't helpful and was extremely brittle.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
deb06bd3566e18f677e76bc435d478b033fe328b 16-Jan-2010 Ted Kremenek <kremenek@apple.com> Remove 'default' case in switch statement in clang_getCursorKindSpelling(). This identified a missing case (warned by the compiler) and identified that CXCursor_FirstDecl didn't actually correspond to the first decl.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
283cae37b03047c14ef918503bc46b08405c3b69 15-Jan-2010 Douglas Gregor <dgregor@apple.com> Make CXCursor's data opaque.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b89e8f64e63aa1a76452e505c6432e0de93fa7cb 13-Jan-2010 Ted Kremenek <kremenek@apple.com> Add 'referringDecl' field to CXCursor to prepare the way to better model declaration references from other delcarations.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93343 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
c50277f748d13f52bd62a6a2c3bede2cf7d65eea 13-Jan-2010 Ted Kremenek <kremenek@apple.com> Rename clang_getUSR() -> clang_getDeclUSR(). For now we take a CXDecl instead of a CXEntity.
Enhance USR generation a bit with support for records.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1fc00e6e4976f3a05ab4ac8b5a2c7aa5c4d030eb 12-Jan-2010 Ted Kremenek <kremenek@apple.com> Change clang_getUSR() to return a CXString instead of a 'const char *'.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93213 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
317238334161d2c72d2432a79827d9a7ee1fc123 12-Jan-2010 Ted Kremenek <kremenek@apple.com> CIndex:
- Remove unused (and unimplemented) clang_getDeclarationName().
- Remove unused (and unimplemented) clang_getEntity().
- Add clang_getEntityFromDecl(): maps from a CXDecl to a CXEntity)
- Add clang_getDeclaration(): maps from a (CXEntity, CXTranslationUnit) to a CXDecl).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
01dfea02d1da297e8b53db8eea3d3cc652acda8d 11-Jan-2010 Douglas Gregor <dgregor@apple.com> Improve code completion by introducing patterns for the various C and
C++ grammatical constructs that show up in top-level (namespace-level)
declarations, member declarations, template declarations, statements,
expressions, conditions, etc. For example, we now provide a pattern
for

static_cast<type>(expr)

when we can have an expression, or

using namespace identifier;

when we can have a using directive.

Also, improves the results of code completion at the beginning of a
top-level declaration. Previously, we would see value names (function
names, global variables, etc.); now we see types, namespace names,
etc., but no values.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93134 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
6ab9db10c5f89d1db230d227f67ff18f55608e27 08-Jan-2010 Ted Kremenek <kremenek@apple.com> For now, add back clang_getDeclSource().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93003 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
d8210650ed948de65a08a8daf16d291b747717c4 07-Jan-2010 Ted Kremenek <kremenek@apple.com> Change clang_getDeclExtent() to have the endpoint point to the last character in the last token.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3aacd53816b4ba78f085c05232ec84f4947222d6 06-Jan-2010 Daniel Dunbar <daniel@zuster.org> Add missing CINDEX_LINKAGE.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
817db7cb9bc5434a9b79aeb580c4404d4146d0a6 06-Jan-2010 Ted Kremenek <kremenek@apple.com> Remove deprecated function 'clang_getDeclSource()'. Use 'clang_getDeclFile()' instead.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fe6fd3d41a7f48317d6856c9327b6cead32c3498 06-Jan-2010 Ted Kremenek <kremenek@apple.com> Add C API hook 'clang_getDeclExtent()', which returns the source extent of a declaration. This implements <rdar://problem/7280072>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1b6869a1831ef66b5024dd23160dc9519c99555d 05-Jan-2010 Ted Kremenek <kremenek@apple.com> Split (mostly nonexistent) USR code out from the main CIndex logic.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ff5ce6eefc7c253ef6edf4d4bfc996fdd82d09aa 18-Dec-2009 Douglas Gregor <dgregor@apple.com> Extend code-completion results with the type of each result

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ec6762c709726bf2ee5f76c21df81e71a56e6f81 18-Dec-2009 Douglas Gregor <dgregor@apple.com> Change clang_codeComplete API to return the results in a structure on
the heap, so that clients are not forced to copy the results during
the initial iteration. A separate clang_disposeCodeCompleteResults
function frees the returned results.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
3d31560343856c573376a04558a7111e7afad4f7 17-Dec-2009 Chandler Carruth <chandlerc@gmail.com> Include <time.h> in order to use 'time_t'.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
8506dde586459887b7e14e23a30af8ac5be5adb6 03-Dec-2009 Daniel Dunbar <daniel@zuster.org> Switch clang_createTranslationUnitFromSourceFile to use ASTUnit::LoadFromCommandLine.
- This is much faster, as it avoids the overhead of dumping an AST file to disk and reloading it.
- For debugging purposes, there is a clang_setUseExternalASTGeneration hook which can be used to disable this.

On the Sketch Cocoa app, the speedup is pretty nice, especially when using a PCH file while scanning the source:

Wall time to c-index-test all files (no PCH):
Old: 23.4221
New: 12.3884

Wall time to c-index-test all files (with a PCH, and "local" mode):
Old: 10.9233
New: 1.9038

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90385 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
735df88a38e80c1ca70daa889aa516b8b9f54b50 02-Dec-2009 Douglas Gregor <dgregor@apple.com> Extend the CIndex code-completion API to perform code completion
involving unsaved files, using the -remap-file= functionality recently
added to clang-cc.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90314 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
738855554394a6afcf39cc8345fd22c3756b8dd0 17-Nov-2009 Ted Kremenek <kremenek@apple.com> Add clang_getNullCursor() and clang_equalCursors() (the latter for comparing cursors).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4633d1b26949346b6c0e707f76b899c79948b592 17-Nov-2009 Ted Kremenek <kremenek@apple.com> Allow "source_filename" to be an optional argument (the client can provide NULL). This allows the client to put the source_filename in the command_line_args without fear of the file being named twice.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89118 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ef0cef6cec8de5fc60e469a93436eed7212e0dc2 09-Nov-2009 Steve Naroff <snaroff@apple.com> Introduce CXString type and associated functions clang_getCString() and clang_disposeString().

This abstraction will help us manage string memory for complex names that cross the C++/C boundary (e.g. ObjC methods, selectors). This patch also uses it in clang_getTranslationUnitSpelling (which I'm not sure is necessary). Will investigate later...since the extra malloc() can't hurt (for now).

Patch by John Thompson.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86562 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
0c8296dfb495f41d6f0de6fe1d03014ffd063674 07-Nov-2009 Douglas Gregor <dgregor@apple.com> Various improvements to Clang's code-completion infrastructure:
- Introduce more code-completion string "chunk" kinds that describe
symbols, the actual text that the user is expected to type, etc.
- Make the generation of macro results optional, since it can be
slow
- Make code-completion accessible through the C API, marshalling the
code-completion results through a temporary file (ick) to maintain
process separation.

The last doesn't have tests yet.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
08b0e8daeb683686b876d72674962ad96df21d45 31-Oct-2009 Douglas Gregor <dgregor@apple.com> Add two missing CINDEX_LINKAGE uses, in libCIndex, from Kovarththanan
Rajaratnam!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
f96b524306ccfa623235d375deee79637bd38f29 28-Oct-2009 Steve Naroff <snaroff@apple.com> Remove _clang_initCXLookupHint() and _clang_getCursorWithHint(). Related to <rdar://problem/7310688>.

Localize the optimization to ResolveLocationInAST(). The last valid AST location is now stored with ASTUnit. There still isn't optimal, however it's an improvement (with a much cleaner API). Having the client manage an "hint" is error prone and complex.

I wanted to land the major changes before finishing up the optimizations.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85425 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
88145034694ed5267fa6fa5febc54fadc02bd479 27-Oct-2009 Steve Naroff <snaroff@apple.com> Add support for 'CXFile' (<rdar://problem/7303360>).

- 4 new functions (clang_getCursorSourceFile, clang_getDeclSourceFile, clang_getFileName, clang_getFileTime).

- Should remove clang_getDeclSource() and clang_getCursorSource(). For now, just put 'deprecate' comment in header.

- Also changed CXX style comment to C style (to eliminate warning).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2e06fc877a633abea3b40a64950c7316dac29ca8 27-Oct-2009 John Thompson <John.Thompson.JTSoftware@gmail.com> Changes for building as a Windows DLL

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85234 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fbcb2b716bee88c754684bd189913ed9f8c09086 22-Oct-2009 Ted Kremenek <kremenek@apple.com> Split clang_getCursor() into clang_getCursor() and clang_getCursorWithHint().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
139ba86a362593da2e350f881e5c7003917aa5a7 22-Oct-2009 Ted Kremenek <kremenek@apple.com> Enhance 'clang_createTranslationUnitFromSourceFile()' in two ways:

(1) Allow the source file to be specified in the actual command line arguments by allowing the
caller to set 'source_filename' to NULL.

(2) Automatically strip off the arguments '-emit-ast', '-fsyntax-only', and '-c'.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
6a6de8b4fc944ca1bfa4e47c516d049a0d627b0e 21-Oct-2009 Steve Naroff <snaroff@apple.com> Extend clang_getCursor() to take a 'relativeDecl' argument (so speed up searching). Without a 'relativeDecl', the algorithm is n-squared. For example, running the following command on 'Large.m' takes hours without a 'relatvieDecl'.

snaroff% time ../../Debug/bin/c-index-test Large.ast all > Large.out
snaroff% cat Large.m
#import <Cocoa/Cocoa.h>
#import <QuickTime/QuickTime.h>
#import <OpenGL/OpenGL.h>

With a 'relativeDecl', it takes <30 seconds:-)



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b4ece6377d95e35a8df01cd010d910c34d690f67 20-Oct-2009 Steve Naroff <snaroff@apple.com> Add an example to help claify the process/assumptions...


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84642 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
e56b4baeba5097852e04bc41ca2e0396cf729955 20-Oct-2009 Steve Naroff <snaroff@apple.com> - Extend clang_createIndex() to support PCH and diagnostic 'filtering'. This seems cleaner to me without sacrificing much flexibility.

- Remove clang_wantOnlyLocalDeclarations().

- Remove 'displayDiagnostics' arguments to clang_createTranslationUnitFromSourceFile() and clang_createTranslationUnit().

- Have clang_createTranslationUnitFromSourceFile() strip the '-o <outfile>' command line arguments if they exist. Document this semantic in the header. Also verify we have a valid ASTUnit before telling it to 'unlinkTemporaryFile()'.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
1374598619f83e6b2de91341a326eae564ece2cb 20-Oct-2009 Ted Kremenek <kremenek@apple.com> Really fix <rdar://problem/7312058> by adding a 'displayDiagnostics' option to
clang_createTranslationUnit() and clang_createTranslationUnitFromSourceFile(). The user can now
specify if the diagnostics from Clang are printed to stderr or are silenced completely. We can
obviously evolve this API to be more general in the future.

Note: Added a FIXME since I wasn't certain what was the best way to redirect to something analogous
to '/dev/null' on Windows.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84548 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7d1d49d2971b20a97b3c2a301470b9eaaa130137 16-Oct-2009 Douglas Gregor <dgregor@apple.com> Keep track of whether declararions were loaded from a precompiled
header or not via a new "PCHLevel" field in Decl. We currently use
this information to help CIndex filter out declarations that came from
a precompiled header (rather than from an AST file). Further down the
road, it can be used to help implement multi-level precompiled
headers.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
5b7d8e254f6c2855b37b5521c0aee0a560dab237 15-Oct-2009 Steve Naroff <snaroff@apple.com> Implement <rdar://problem/7303432> [Clang/Index] In-memory-style AST generation API (initial API implementation).

Added clang_createTranslationUnitFromSourceFile().
Changed clang_createIndex() to lookup the location of clang (using dladdr).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
ee9405e807d7c447c0143c2bd865b759192e97b3 25-Sep-2009 Steve Naroff <snaroff@apple.com> Add clang_getDeclSource().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
699a07d8a0b1579c5178b3baf4bcf9edb6b38108 25-Sep-2009 Steve Naroff <snaroff@apple.com> Add clang_getDeclLine and clang_getDeclColumn
Fix clang_getCursorDecl to do the right thing for expr refs
Fixup test file to accommodate new output (which includes the line/column for the referenced decl)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
4ade6d6eae934f796ca43c81a5aa185e456dde9b 23-Sep-2009 Steve Naroff <snaroff@apple.com> More work to enable more exhaustive testing of the indexing API.

Next step: Add actual some test cases:-)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
fb5704295c6137685a7b90b92cd6b958028740c8 22-Sep-2009 Steve Naroff <snaroff@apple.com> - Implement support for various types of "refs" (initially to help test clang_getCursor()).
- Add missing prototypes for dispose functions.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
459789b8d2e3235e2f3342c393b7a78bd73c1347 16-Sep-2009 Chris Lattner <sabre@nondot.org> fit in 80 cols


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82073 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
77128ddd3077fc045751a55bb3226802b15d5510 15-Sep-2009 Steve Naroff <snaroff@apple.com> - clang_getCursor(): Replace asserts with error codes (CXCursor_InvalidFile, CXCursor_NoDeclFound).
- Add predicate clang_isInvalid().
- Implement clang_getCursorFromDecl().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81908 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
af08ddc8f1c53fed8d8d0ad82aa2a0bb7d654bd1 03-Sep-2009 Steve Naroff <snaroff@apple.com> - Add back some harmless code that part of a reverted commit (r80859). I'll investigate the lifetime snafu (with ASTUnit) separately.
- Traverse category methods, add a "class ref" and make the little test harness a bit more flexible.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
bce6f62ae7d2c15992617f64e30067803fb5b47f 03-Sep-2009 Daniel Dunbar <daniel@zuster.org> Revert "Visit function/method bodies and issue callback for parameters and local
variables.", this is breaking x86_64-apple-darwin10 and Linux tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
23d8bea7056e7f474ce7f42042021a148feee8f7 03-Sep-2009 Steve Naroff <snaroff@apple.com> Visit function/method bodies and issue callback for parameters and local variables.
Add clang_getTranslationUnitSpelling().



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80859 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
f334b4e3eda5a39f041fe13f805dbb53535daa2f 02-Sep-2009 Steve Naroff <snaroff@apple.com> Start issuing callback for references (add some predicates, refactor some code).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80810 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
c857ea4d22e1e6dd9ede1f0e84d48b157c6924fd 02-Sep-2009 Steve Naroff <snaroff@apple.com> Flesh out CXCursorKind...

- More declaration types (distinguish between struct/union/class, instance/class methods).
- Add definition types (class, category, function, instance/class method, etc.).

Add client data to clang_loadDeclaration() and implement.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
b7cd17cfd2970636af0fe9b491bab1acf0009c2f 01-Sep-2009 Steve Naroff <snaroff@apple.com> Tweak comment based on Daniel's recently added '-emit-ast' option.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2b8ee6c2994f738e5162ff46b638974870f51662 01-Sep-2009 Steve Naroff <snaroff@apple.com> Add explicit "blind" client data to callback function (since we aren't using blocks).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80673 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
2d4d629d8a0de5112c7ae9d05c03ddbf6dcd956a 31-Aug-2009 Steve Naroff <snaroff@apple.com> Implement source/line/column hooks.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
89922f86f4e7da383af2a62ef04ad8b93b941220 31-Aug-2009 Steve Naroff <snaroff@apple.com> More fleshing out the C-based indexing API (under construction).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80529 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
50398199fb10e196a8d92fbf7a062dbe42ed88fd 28-Aug-2009 Steve Naroff <snaroff@apple.com> Lot's of little changes to get the C-based indexing API going...

Work in progress.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
7e8f8189d0876e03ebc5018f6a22e41f5aaa20d9 28-Aug-2009 Steve Naroff <snaroff@apple.com> Add CX prefix to Cursor and move a comment.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
600866cc7d6d9ec2e27d4b6d6ec461f6463b5ab6 27-Aug-2009 Steve Naroff <snaroff@apple.com> Fill in Index.h header file and add stubs to implementation file.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h
d2fa56687f8bd5ac6ebf9d9468d0efd714986a54 27-Aug-2009 Ted Kremenek <kremenek@apple.com> Add initial boilerplate for CIndex, a shared library that will vend high-level
source symbol information (harvested by Clang) through a C API.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80166 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/include/clang-c/Index.h