summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang
Commit message (Collapse)AuthorAgeFilesLines
...
* [libclang] Add an environment variable to disable thread background ↵Argyrios Kyrtzidis2012-10-231-0/+3
| | | | | | priotity, for testing llvm-svn: 166466
* Remove const_casts by propagating constness down to called functions.Dmitri Gribenko2012-10-191-9/+7
| | | | llvm-svn: 166287
* [doc parsing] use getParamName to access parameter Fariborz Jahanian2012-10-181-10/+15
| | | | | | | for current(rewritten) comment and getParamNameAsWritten to access param name coming with \param marker. llvm-svn: 166231
* libclang/CXComment.cpp: Fix abuse of StringRef.NAKAMURA Takumi2012-10-181-1/+1
| | | | llvm-svn: 166163
* [libclang] Invoke a ppIncludedFile callback when indexing implicit module ↵Argyrios Kyrtzidis2012-10-183-19/+15
| | | | | | imports. llvm-svn: 166161
* [Doc parsing]: This patch adds <Declaration> tag to Fariborz Jahanian2012-10-171-1/+20
| | | | | | | | | | | XML comment for declarations which pretty-prints declaration. I had to XFAIL one test annotate-comments.cpp. This test is currently unmaintainable as written. Dmitri G., can you see what we can do about this test. We should change this test such that adding a new tag does not wreck havoc to the test. llvm-svn: 166130
* Add pnaclcall convention to Native Client targets.Derek Schuff2012-10-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Because PNaCl bitcode must be target-independent, it uses some different bitcode representations from other targets (e.g. byval and sret for structures). This means that without additional type information, it cannot meet some native ABI requirements for some targets (e.g. passing structures containing unions by value on x86-64). To allow generation of code which uses the correct native ABIs, we also support triples such as x86_64-nacl, which uses target-dependent IR (as opposed to le32-nacl, which uses byval and sret). To allow interoperation between the two types of code, this patch adds a calling convention attribute to be used in code compiled with the target-dependent triple, which will generate code using the le32-style bitcode. This calling convention does not need to be explicitly supported in the backend because it determines bitcode representation rather than native conventions (the backend just needs to undersand how to handle byval and sret for the Native Client OS). This patch implements __attribute__((pnaclcall)) to generate calls in bitcode according to the le32 bitcode conventions, an attribute which is accepted by any Native Client target, but issues a warning otherwise. llvm-svn: 166065
* Fixes location of overriding declaration with no commentFariborz Jahanian2012-10-151-1/+1
| | | | | | of their own. llvm-svn: 165972
* structured document comment: patch to provide comment for overriding functionFariborz Jahanian2012-10-151-3/+3
| | | | | | | template when comment is comming from overridden declaration. // rdar://12378793 llvm-svn: 165953
* search for overridden methods with comment when overriding methodFariborz Jahanian2012-10-111-2/+2
| | | | | | | has none of its own. Factor in Doug's comments. // rdar://12378793 llvm-svn: 165771
* Remove pointless classof()'s.Sean Silva2012-10-112-12/+0
| | | | | | | Updates to llvm/Support/Casting.h have rendered these classof()'s irrelevant. llvm-svn: 165770
* [libclang] Improve AST serialization done by ASTUnit::Save().Argyrios Kyrtzidis2012-10-111-0/+2
| | | | | | | | | The ASTUnit needs to initialize an ASTWriter at the beginning of parsing to fully handle serialization of a translation unit that imports modules. Do this by introducing an option to enable it, which corresponds to CXTranslationUnit_ForSerialization on the C API side. llvm-svn: 165717
* [Doc parsing] This patch searches overridden objc/c++Fariborz Jahanian2012-10-101-15/+22
| | | | | | | | | | methods looking for documentation on a particular base class inherited by any method that overrides the base class. In case of redeclaration, as when objc method is defined in the implementation, it also looks up for documentation in class/class extension being redeclared. llvm-svn: 165643
* Rename ObjCMethodDecl::isSynthesized to isPropertyAccessor.Jordan Rose2012-10-102-5/+5
| | | | | | | | | | | | | This more accurately reflects its use: this flag is set when a method matches the getter or setter name for a property in the same class, and does not actually specify whether or not the definition of the method will be synthesized (either implicitly or explicitly with @synthesize). This renames the setter and backing field as well, and changes the (soon-to-be-obsolete?) XML dump format to use 'property_accessor' instead of 'synthesized'. llvm-svn: 165626
* Place temporary LTO files into their own subdirectory.Bill Wendling2012-10-101-1/+1
| | | | llvm-svn: 165600
* Disable the preprocessing record when indexing a source fileArgyrios Kyrtzidis2012-10-101-0/+3
| | | | | | and modules are not enabled. llvm-svn: 165593
* When indexing a module file, for the ppIncludedFile callback giveArgyrios Kyrtzidis2012-10-101-2/+9
| | | | | | | an invalid location if the location points to the synthetic buffer for the module input. llvm-svn: 165592
* Revert "Use a special path to place the .o files in."Bob Wilson2012-10-091-2/+1
| | | | | | This reverts commit 165429 in an attempt to get our buildbots going. llvm-svn: 165573
* Move the logic that searches for overridden methods from libclang toArgyrios Kyrtzidis2012-10-091-180/+6
| | | | | | ASTContext so that it can be widely available. llvm-svn: 165473
* Use a special path to place the .o files in.Bill Wendling2012-10-081-1/+2
| | | | llvm-svn: 165429
* [libclang] Don't disable the preprocessing record while indexing so asArgyrios Kyrtzidis2012-10-061-20/+4
| | | | | | | | | | | | to not mess up with module building. It was not worth trying to combine indexing without preprocessing record and building modules with one because: -just importing a module/PCH that was built with a pp record, enables it anyway -the performance gain of indexing without the preprocessing record is insignificant. llvm-svn: 165352
* [libclang] Now that we have a CXModule object, pass it to theArgyrios Kyrtzidis2012-10-051-6/+4
| | | | | | importedASTFile indexing callback. llvm-svn: 165281
* [libclang] Introduce new C functions that provide information about modules:Argyrios Kyrtzidis2012-10-052-0/+54
| | | | | | | | | | | clang_Cursor_getModule clang_Module_getParent clang_Module_getName clang_Module_getFullName clang_Module_getNumTopLevelHeaders clang_Module_getTopLevelHeader llvm-svn: 165280
* [libclang] Introduce CXCursor_ModuleImportDecl cursor kind, used for a moduleArgyrios Kyrtzidis2012-10-052-6/+25
| | | | | | import declaration. llvm-svn: 165277
* Add an explicit -object_path_lto flag during linking with a uniquified temporaryBill Wendling2012-10-031-0/+6
| | | | | | file name if building Apple-style. llvm-svn: 165184
* [libclang] When indexing, invoke the importedASTFile for PCH files as well.Argyrios Kyrtzidis2012-10-033-1/+27
| | | | llvm-svn: 165161
* [libclang] Simplify indexing of module imports by handling implicitArgyrios Kyrtzidis2012-10-034-19/+13
| | | | | | imports via ImportDecls. llvm-svn: 165160
* Comment to XML conversion: escape XML special chars correctly; use correctDmitri Gribenko2012-10-031-11/+9
| | | | | | regex for version tuples. llvm-svn: 165104
* Some renames to use the 'visitor' nomenclature, no functionality change.Argyrios Kyrtzidis2012-10-031-2/+2
| | | | llvm-svn: 165083
* [Doc parse]: SUpport for message in deprecated/unavailableFariborz Jahanian2012-10-021-5/+19
| | | | | | attribute going iinto XML document. llvm-svn: 165066
* [libclang] When indexing an AST file, only deserialize the file levelArgyrios Kyrtzidis2012-10-021-23/+9
| | | | | | declarations of the current primary module. llvm-svn: 165046
* [Doc parsing]: Add available and deprecated attribute infoFariborz Jahanian2012-10-021-1/+6
| | | | | | to XML output. // rdar://12378879 llvm-svn: 165039
* [libclang] When indexing an AST file, only deserialize the preprocessing recordArgyrios Kyrtzidis2012-10-021-12/+1
| | | | | | entities of the current primary module. llvm-svn: 165023
* Add info in the preprocessing record whether an inclusion directiveArgyrios Kyrtzidis2012-10-021-1/+2
| | | | | | resulted in an automatic module import. llvm-svn: 165022
* [libclang] Even though we disable the preprocessing record during indexing,Argyrios Kyrtzidis2012-10-021-5/+18
| | | | | | make sure that it gets enabled for when a module needs to be created. llvm-svn: 165021
* [libclang] Implement the importedASTFile indexing callback to provideArgyrios Kyrtzidis2012-10-024-0/+40
| | | | | | info about imported modules. llvm-svn: 165020
* availability in structured documents. TakesFariborz Jahanian2012-10-011-33/+27
| | | | | | care of comments by Dimitri and Doug. llvm-svn: 164957
* Move the 'find macro by spelling' infrastructure to the Preprocessor class andDmitri Gribenko2012-09-291-1/+1
| | | | | | | use it to suggest appropriate macro for __attribute__((deprecated)) in -Wdocumentation-deprecated-sync. llvm-svn: 164892
* For PPCallbacks::InclusionDirective() add a parameter for the module, wheneverArgyrios Kyrtzidis2012-09-291-1/+2
| | | | | | | an inclusion directive was automatically turned into a module import, and PPCallbacks::moduleImport() for an explicit module import. llvm-svn: 164874
* [Doc parsing] Add availability information to generated Comment XML.Fariborz Jahanian2012-09-281-1/+56
| | | | | | | (I still need to add a test once I figure it out). Reviewed off-line by Doug. // rdar://12378879 llvm-svn: 164861
* Per discussion in ↵Argyrios Kyrtzidis2012-09-271-1/+1
| | | | | | | | | | http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120917/064551.html have PPCallbacks::InclusionDirective pass the character range for the filename quotes or brackets. rdar://11113134 & http://llvm.org/PR13880 llvm-svn: 164743
* [libclang] Remove the ParentKind cursor kind from code-completion results.Argyrios Kyrtzidis2012-09-261-2/+0
| | | | | | This is to reduce dependency to cursors for the code-completion results. llvm-svn: 164705
* Have ASTUnit::Save() return a bool to indicate save error.Argyrios Kyrtzidis2012-09-261-1/+2
| | | | | | Removes a dependency of ASTUnit to clang-c/Index.h. llvm-svn: 164704
* Fix the AST representation for non-type template arguments to encodeEli Friedman2012-09-263-4/+13
| | | | | | | | | | | | enough information so we can mangle them correctly in cases involving dependent parameter types. (This specifically impacts cases involving null pointers and cases involving parameters of reference type.) Fix the mangler to use this information instead of trying to scavenge it out of the parameter declaration. <rdar://problem/12296776>. llvm-svn: 164656
* [libclang] Do a AST concurrency check in clang_indexTranslationUnit_Impl.Argyrios Kyrtzidis2012-09-251-0/+2
| | | | llvm-svn: 164626
* Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments.Dmitri Gribenko2012-09-151-2/+2
| | | | llvm-svn: 163983
* PR13811: Add a FunctionParmPackExpr node to handle references to functionRichard Smith2012-09-122-0/+2
| | | | | | | parameter packs where the reference is not being expanded but the pack has been. Previously, Clang would segfault in such cases. llvm-svn: 163672
* [libclang] Do index 'extern' declarations inside functions.Argyrios Kyrtzidis2012-09-104-4/+38
| | | | | | rdar://12257073 llvm-svn: 163563
* Comment AST: TableGen'ize all command lists in CommentCommandTraits.cpp.Dmitri Gribenko2012-09-103-38/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now we have a list of all commands. This is a good thing in itself, but it also enables us to easily implement typo correction for command names. With this change we have objects that contain information about each command, so it makes sense to resolve command name just once during lexing (currently we store command names as strings and do a linear search every time some property value is needed). Thus comment token and AST nodes were changed to contain a command ID -- index into a tables of builtin and registered commands. Unknown commands are registered during parsing and thus are also uniformly assigned an ID. Using an ID instead of a StringRef is also a nice memory optimization since ID is a small integer that fits into a common bitfield in Comment class. This change implies that to get any information about a command (even a command name) we need a CommandTraits object to resolve the command ID to CommandInfo*. Currently a fresh temporary CommandTraits object is created whenever it is needed since it does not have any state. But with this change it has state -- new commands can be registered, so a CommandTraits object was added to ASTContext. Also, in libclang CXComment has to be expanded to include a CXTranslationUnit so that all functions working on comment AST nodes can get a CommandTraits object. This breaks binary compatibility of CXComment APIs. Now clang_FullComment_getAsXML(CXTranslationUnit TU, CXComment CXC) doesn't need TU parameter anymore, so it was removed. This is a source-incompatible change for this C API. llvm-svn: 163540
* Revert r163083 per chandlerc's request.Joao Matos2012-09-041-1/+0
| | | | llvm-svn: 163149
OpenPOWER on IntegriCloud