17828ca5857d5d9cadfffd339f888de58182c8f1 |
|
14-May-2013 |
David Blaikie <dblaikie@gmail.com> |
Provide operator<< for stream output of DeclarationNames ASTDumper was already trying to do this & instead got an implicit bool conversion by surprise (thus printing out 0 or 1 instead of the name of the declaration). To avoid that issue & simplify call sites, simply make it the normal/expected operator<<(raw_ostream&, ...) overload & simplify all the existing call sites. (bonus: this function doesn't need to be a member or friend, it's just using public API in DeclarationName) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181832 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
181e3ecc0907ae0103586a9f4db52241995a8267 |
|
13-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Cleanup handling of UniqueExternalLinkage. This patch renames getLinkage to getLinkageInternal. Only code that needs to handle UniqueExternalLinkage specially should call this. Linkage, as defined in the c++ standard, is provided by getFormalLinkage. It maps UniqueExternalLinkage to ExternalLinkage. Most places in the compiler actually want isExternallyVisible, which handles UniqueExternalLinkage as internal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181677 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
21f18c4fda167dc5f72feddbd6a7ac1b63200a0d |
|
07-Feb-2013 |
Guy Benyei <guy.benyei@intel.com> |
Add OpenCL samplers as Clang builtin types and check sampler related restrictions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
aca3e56144308f97f676fa30b07179e1203f7822 |
|
03-Feb-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: remove 'using namespace cxstring' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
8d0eb2f71fb74bd7f5a145e811910273abc98a39 |
|
03-Feb-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: remove unneeded const_cast git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
e414cc167815e773e4fd27e44943734d54160cab |
|
03-Feb-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: migrate USRGenerator to ConstDeclVisitor git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174281 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
5595ded882b22d77fdf535bd1a4c6c090110348a |
|
02-Feb-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: introduce cxstring::{createRef,createDup} for StringRefs Also migrate all clients from the old API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
dc66adb40ee871b4c578ba615f45d82476c7119e |
|
01-Feb-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: itroduce cxstring::createEmpty() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174174 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
9c48d16a11872624410ab3a5944edcba0f32818c |
|
26-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: refactor CXStringPool: make it a class We are not exposing the pool or string buffers to libclang users, so no need to maintain a procedural interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173595 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
e22339c44bb28d71a2cc97c840d3da0c4bdb4909 |
|
23-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
libclang: change return type of getCursorDecl() to 'const Decl *' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
e6b9d802fb7b16d93474c4f1c179ab36202e8a8b |
|
20-Jan-2013 |
Guy Benyei <guy.benyei@intel.com> |
Implement OpenCL event_t as Clang builtin type, including event_t related OpenCL restrictions (OpenCL 1.2 spec 6.9) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172973 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
b13621d08e20ac7aa550e05896de8a57ee99c1e8 |
|
18-Dec-2012 |
Guy Benyei <guy.benyei@intel.com> |
Re-commit r170428 changes with Linux style file endings. Add OpenCL images as clang builtin types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170432 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
7f92f2d8d9b7a07900c030183bc13a9ff60057cc |
|
18-Dec-2012 |
Guy Benyei <guy.benyei@intel.com> |
Revert changes from r170428, as I accidentally changed the line endings of these files to Windows style. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170431 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
736104a7619c53ef92553780273d7357a3cdde81 |
|
18-Dec-2012 |
Guy Benyei <guy.benyei@intel.com> |
Add OpenCL images as clang builtin types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
e1c2c2023ee160bd3051682faff04c4f9c5e8ebd |
|
07-Dec-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Declarations inside anonymous namespaces have internal linkage so their USR should contain a location. This uniques them from other declarations with the same name but in different translation units. rdar://10546541 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
3d615b2a4217200fe1226d77683f4ef57dffbffd |
|
06-Nov-2012 |
Ted Kremenek <kremenek@apple.com> |
Remove completely irrelevant code from USR generation. Thanks to Richard Smith for pointing this out. This code stopped serving its purpose during r103212 in a refactoring. My initial fix was to add back the logic to abort the USR generation for InternalLinkage, but enough tests broke suspiciously that I fear that USR generation for cursors with InternalLinkage is now expected by some clients (where it wasn't the case when the refactoring took place). I don't own this code anymore and have not looked at it for some time, but clearly this code is dead and can be removed pending further review on the proper logic here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167442 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
d7a6b1640e565487d163023a6a2e83f55476ae96 |
|
26-Sep-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Fix the AST representation for non-type template arguments to encode 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>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
ec2f579599e37ba5d2c7282d78309cc4dd36d73e |
|
31-Aug-2012 |
Joao Matos <ripzonetriton@gmail.com> |
Normalize line endings of r163013. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163024 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
6666ed4ed2e2bc13da5ac5d0a4947019137d45be |
|
31-Aug-2012 |
Joao Matos <ripzonetriton@gmail.com> |
Improved MSVC __interface support by adding first class support for it, instead of aliasing to "struct" which had some incorrect behaviour. Patch by David Robins. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
855243789cb44799c03f4c7216d3d6308805f549 |
|
07-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Plug a long standing memory leak in TemplateArgument. The integral APSInt value is now stored in a decomposed form and the backing store for large values is allocated via the ASTContext. This way its not leaked as TemplateArguments are never destructed when they are allocated in the ASTContext. Since the integral data is immutable it is now shared between instances, making copying TemplateArguments a trivial operation. Currently getting the integral data out of a TemplateArgument requires creating a new APSInt object. This is cheap when the value is small but can be expensive if it's not. If this turns out to be an issue a more efficient accessor could be added. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
4e4d08403ca5cfd4d558fa2936215d3a4e5a528d |
|
11-Mar-2012 |
David Blaikie <dblaikie@gmail.com> |
Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). The member variable is always "LangOpts" and the member function is always "getLangOpts". Reviewed by Chris Lattner git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152536 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
36d592718ff342f762e32cbde73d1113f88cb275 |
|
13-Feb-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
drop more llvm:: prefixes on SmallString<> More cleanup after r149799. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
1e4c01b79273b9cd4e9e9ecfd3422df3900b8356 |
|
13-Feb-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
drop more llvm:: prefixes on OwningPtr<> More cleanup after r149798. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
ad133ea9ed91904c649f7f5a1e2f784b3c3c7972 |
|
10-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Encode the template specialization parameters of a function specialization in its USR string. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150264 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
7530c034c0c71a64c5a9173206d9742ae847af8b |
|
17-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove unreachable code in Clang. (replace with llvm_unreachable where appropriate or when GCC requires it) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
bd9482d859a74bf2c45ef8b8aedec61c0e1c8374 |
|
01-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Eliminate ObjCForwardProtocolDecl, which is redundant now that ObjCProtocolDecl modules forward declarations properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
375bb1413c041055262c8a416f20d10474a5eda9 |
|
27-Dec-2011 |
Douglas Gregor <dgregor@apple.com> |
Eliminate ObjCClassDecl, which is redundant now that ObjCInterfaceDecl covers both declarations (@class) and definitions (@interface) of an Objective-C class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
16ed0e6fda74800595cb98d11969fc4afcc00bac |
|
10-Dec-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Add defensive checks to make sure we don't try to dereference a null pointer after getCursorDecl() is called. rdar://10298421. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146312 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
87ec9c257c99b4136af6c7f5be5a2d486906ba84 |
|
01-Nov-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] For a class extension, give it a unique USR but for any property or ivar it contains give it a USR based on its semantic context, which is the interface. This follows what we already did for objc methods. rdar://10371669 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
854625f7347e4418803fe4aa9131928408e4dc53 |
|
28-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use const_cast to make it obvious that it's just removing constness (and silence warnings). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
2dde35bc626153492f5f58202506c88a27fbff5b |
|
19-Oct-2011 |
John McCall <rjmccall@apple.com> |
More metaprogramming with builtin types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
46d1ea40d77aa66527cc48183750710b55d74914 |
|
18-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Since an objc extension semantically continues the interface of the class don't use unique USRs for them, otherwise we fail to associate @implementation methods with the methods in extensions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142361 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
0ddaeb9b031070ec64afe92d9892875ac44df427 |
|
17-Oct-2011 |
John McCall <rjmccall@apple.com> |
Add a new placeholder type to represent "unbridged" casts in ARC. No semantic analysis yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142208 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
aa4a99b4a62615db243f7a5c433169f2fc704420 |
|
15-Oct-2011 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide half floating point support as a storage only type. Lack of half FP was a regression compared to llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
b8989f27f116ff2400e92a52c067a69846119eb5 |
|
14-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Change operator<< for raw_ostream and NamedDecl to take a reference instead of a pointer. Passing a pointer was a bad idea as it collides with the overload for void*. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
b6a4ac41353476ed771d02ae6a96c2663625ffcd |
|
12-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[libclang] Allow using getDeclCursorUSR function with a Decl* and not a cursor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141770 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
b219cfc4d75f0a03630b7c4509ef791b7e97b2c8 |
|
23-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Switch assert(0/false) llvm_unreachable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
402785357ab053dd53f4fdd858b9630a5e0f8bad |
|
25-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Mechanically rename SourceManager::getInstantiationLoc and FullSourceLoc::getInstantiationLoc to ...::getExpansionLoc. This is part of the API and documentation update from 'instantiation' as the term for macros to 'expansion'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135914 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
5f9e272e632e951b1efe824cd16acb4d96077930 |
|
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports them into the clang namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
1d8052db5a38b62ba5f3802160dcccd87fa0b5b8 |
|
03-May-2011 |
Ted Kremenek <kremenek@apple.com> |
Use the canonical decl when generating the locations for USRs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
8c367589b68019b040f73d44282fc30e4f526f62 |
|
29-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Guard in USRGenerator::GenLoc() against null Decl* from invalid code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130541 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
864c041e118155c2b1ce0ba36942a3da5a4a055e |
|
26-Apr-2011 |
John McCall <rjmccall@apple.com> |
Make yet another placeholder type, this one marking that an expression is a bound member function, i.e. something of the form 'x.f' where 'f' is a non-static member function. Diagnose this in the general case. Some of the new diagnostics are probably worse than the old ones, but we now get this right much more universally, and there's certainly room for improvement in the diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
1de4d4e8cb2e9c88809fea8092bc6e835a5473d2 |
|
07-Apr-2011 |
John McCall <rjmccall@apple.com> |
Basic, untested implementation for an "unknown any" type requested by LLDB. The idea is that you can create a VarDecl with an unknown type, or a FunctionDecl with an unknown return type, and it will still be valid to access that object as long as you explicitly cast it at every use. I'm still going back and forth about how I want to test this effectively, but I wanted to go ahead and provide a skeletal implementation for the LLDB folks' benefit and because it also improves some diagnostic goodness for placeholder expressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129065 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
34b41d939a1328f484511c6002ba2456db879a29 |
|
20-Feb-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Implement the C++0x deduced 'auto' feature. This fixes PR 8738, 9060 and 9132. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126069 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
52d6bbe3aa1e70d40c7cc892a12f41b6017f5c6c |
|
05-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
Don't crash when generating USRs for ObjC methods in protocols. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
cd9175d5013700b2827fc727fed2b53ea89be027 |
|
04-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
USRs for Objective-C methods use the USR of the @interface as their base, not the USR of the class category or extension. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124859 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
ba73adafabb1c0af8bec70a1673edc11e6d30a89 |
|
19-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach libclang to generate USRs containing parameter packs and pack expansions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
a7fc901a2e39bfe55bfcff5934b2d9fdf9656491 |
|
05-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Replace the representation of template template argument pack expansions with something that is easier to use correctly: a new template argment kind, rather than a bit on an existing kind. Update all of the switch statements that deal with template arguments, fixing a few latent bugs in the process. I"m happy with this representation, now. And, oh look! Template instantiation and deduction work for template template argument pack expansions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
3f59c975aa5d047f7edd1b900b5e885c38af0ef7 |
|
26-Dec-2010 |
Chris Lattner <sabre@nondot.org> |
The -fshort-wchar option causes wchar_t to become unsigned, in addition to being 16-bits in size. Implement this by splitting WChar into two enums, like we have for char. This fixes a miscompmilation of XULRunner, PR8856. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
472ccff00cdbcd095c3ba933b9e3f202719f118f |
|
18-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Replace all uses of PathV1::getLast with PathV2::filename. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122117 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
f019943eda4896c1bbe584b4b0439bf6cbff62a9 |
|
16-Nov-2010 |
Ted Kremenek <kremenek@apple.com> |
Rework USR generation from CXCursors to use CXStringBufs for the backing of generated USRs. This optmizes for the case when a client generates a sequence of USRs in sequence, disposing of them soon after generating them. By using a string buffer, we recycle malloc'ed memory instead of constantly malloc'ing and copying strings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
97475834207bf5abb5b58534f783c9b71d4b9df1 |
|
05-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Fix a marvelous chained AST writing bug, where we end up with the following amusing sequence: - AST writing schedules writing a type X* that it had never seen before - AST writing starts writing another declaration, ends up deserializing X* from a prior AST file. Now we have two type IDs for the same type! - AST writer tries to write X*. It only has the lower-numbered ID from the the prior AST file, so references to the higher-numbered ID that was scheduled for writing go off into lalaland. To fix this, keep the higher-numbered ID so we end up writing the type twice. Since this issue occurs so rarely, and type records are generally rather small, I deemed this better than the alternative: to keep a separate mapping from the higher-numbered IDs to the lower-numbered IDs, which we would end up having to check whenever we want to deserialize any type. Fixes <rdar://problem/8511624>, I think. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
097727ba0c0b24959a43ffe74b2d56a9d1e7e3fb |
|
21-Sep-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix indentation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114394 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
c52d069277c58009a6c91a66d2f0754299f1acde |
|
21-Sep-2010 |
Ted Kremenek <kremenek@apple.com> |
Check for null ObjCInterfaceDecls returned from getClassInterface() when generating USRs. While I have no test case for this (could not create one), this shows up in crash reports. Tentatively fixes <rdar://problem/8452791>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114392 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
66b7fbfa7b0537fac3d61494e89a1d59979974b1 |
|
20-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a simple, substitution-based compression scheme for USRs, so that redundant types don't result in super-long USRs. Fixes <rdar://problem/8447875>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
0ab1e9f672a86cf3f094780d99251553a2b69fc7 |
|
01-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Improve libclang indexing support for class template specializations in a few related ways: - Don't recurse into instantiations of templates. - Recurse into explicit specializations. - Visit the template arguments of an explicit specialization or explicit instantiation. - Include template specialization arguments in the USRs for class template specializations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
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/tools/libclang/CIndexUSRs.cpp
|
28a7f258aefdd58db0bbf3a903f053bf2cb69c90 |
|
25-Aug-2010 |
Ted Kremenek <kremenek@apple.com> |
USRs for class extensions should "mangle" in the location of the extension. (<rdar://problem/8350262>) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
a7e6845660f91ec611427e1db842780e1ec12bdb |
|
22-Aug-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Detabify. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
f48b5313825894c5e64ee39e932142723363571b |
|
22-Jul-2010 |
Ted Kremenek <kremenek@apple.com> |
Switch USR generation to use file offsets instead of line/columns for anonymous symbols. Fixes <rdar://problem/8221557>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
465d41b92b2c862f3062c412a0538db65c6a2661 |
|
11-May-2010 |
Abramo Bagnara <abramo.bagnara@gmail.com> |
Merged Elaborated and QualifiedName types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
2ea5baf08dc5006f2d6168948140fd3a709d5cf7 |
|
07-May-2010 |
Ted Kremenek <kremenek@apple.com> |
Extend C++ usrs to include type mangling for tag decl arguments, indicating whether a method is static, and mangling in the qualifers of the method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
3ebd8dcbf3485303bd4c1c977a182e2ab9283970 |
|
07-May-2010 |
Ted Kremenek <kremenek@apple.com> |
Switch USR generation over from NamedDecl::getNameAsString() to NamedDecl::printName(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
8e67219a7cb0cf7bfa432f8c30da9c52999737ce |
|
07-May-2010 |
Ted Kremenek <kremenek@apple.com> |
Add initial USR support for mangling in the types of C++ functions and methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
cbd66f00cfe5c4412f8efd6e66b0bb6bae956f7c |
|
07-May-2010 |
Ted Kremenek <kremenek@apple.com> |
Add USR support for C++ namespaces, and unify mangling of location information in USRs for anonymous symbols. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103212 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|
f51f20fa34654da75d15a9e2a1a0cd2fc0d8603d |
|
30-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Rename 'CIndex' to 'libclang', since it has basically become our stable public (C) API, and will likely grow further in this direction in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/tools/libclang/CIndexUSRs.cpp
|