summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/ASTConsumers.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Switch assert(0/false) llvm_unreachable.David Blaikie2011-09-231-2/+2
| | | | llvm-svn: 140367
* Add template instantiations to the output of -ast-dump.Richard Trieu2011-07-281-1/+2
| | | | llvm-svn: 136306
* remove unneeded llvm:: namespace qualifiers on some core types now that ↵Chris Lattner2011-07-231-7/+7
| | | | | | | | LLVM.h imports them into the clang namespace. llvm-svn: 135852
* Modify some deleted function methods to better reflect reality:Alexis Hunt2011-05-061-1/+1
| | | | | | | | | | | | | | | | | | | | - New isDefined() function checks for deletedness - isThisDeclarationADefinition checks for deletedness - New doesThisDeclarationHaveABody() does what isThisDeclarationADefinition() used to do - The IsDeleted bit is not propagated across redeclarations - isDeleted() now checks the canoncial declaration - New isDeletedAsWritten() does what it says on the tin. - isUserProvided() now correct (thanks Richard!) This fixes the bug that we weren't catching void foo() = delete; void foo() {} as being a redefinition. llvm-svn: 131013
* Support for C++11 (non-template) alias declarations.Richard Smith2011-04-151-2/+3
| | | | llvm-svn: 129567
* Remove the AST printer (-ast-print-xml), which is too incomplete andDouglas Gregor2011-03-071-34/+0
| | | | | | | | | | | | | | | too low-level to actually be useful but is just interesting enough for people to try to use it (which won't actually work beyond toy examples). To bring back the AST printer, it needs to be: - Complete, covering all of C/C++/Objective-C - Documented, with appropriate Schema against which we can validate the output - Designed for C/C++/Objective-C, not Clang's specific ASTs - Stable across Clang versions - Well-tested llvm-svn: 127141
* handle labeldecls.Chris Lattner2011-02-181-1/+6
| | | | llvm-svn: 125806
* Eliminate the internal command-line option for viewing inheritance in C++ ↵Douglas Gregor2011-02-171-28/+0
| | | | | | classes, since it's only really worked for the trivial cases anyway due to lame pseudo-parsing of the class name. The viewInheritance() function is still available for use in the debugger, where this is far more useful llvm-svn: 125762
* Add IndirectField case in DeclContextPrinter::PrintDeclContext.Francois Pichet2010-12-211-0/+5
| | | | | | Fix PR8832. llvm-svn: 122311
* Merge System into Support.Michael J. Spencer2010-11-291-1/+1
| | | | llvm-svn: 120297
* Add -cc1 -ast-dump-xml, an excessively detailed XML dump of the internalsJohn McCall2010-11-241-0/+20
| | | | | | | | | | | | | of the ASTs. Only available in assertions builds. No stability guarantee. This is intended solely as a debugging tool. I'm not sure if the goals are sufficiently aligned with the XML printer to allow a common implementation. Currently just falls back on the StmtDumper to display statements, which means it doesn't produce valid XML in those cases. llvm-svn: 120088
* Send AST dumping/printing to stdout instead of stderr.Argyrios Kyrtzidis2010-08-031-1/+1
| | | | llvm-svn: 110123
* Simplify code. FunctionDecl and ObjCMethodDecl have some common interfaces.Argyrios Kyrtzidis2010-07-071-15/+4
| | | | llvm-svn: 107769
* Break Frontend's dependency on Rewrite, Checker and CodeGen in shared ↵Daniel Dunbar2010-06-151-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | library configuration Currently, all AST consumers are located in the Frontend library, meaning that in a shared library configuration, Frontend has a dependency on Rewrite, Checker and CodeGen. This is suboptimal for clients which only wish to make use of the frontend. CodeGen in particular introduces a large number of unwanted dependencies. This patch breaks the dependency by moving all AST consumers with dependencies on Rewrite, Checker and/or CodeGen to their respective libraries. The patch therefore introduces dependencies in the other direction (i.e. from Rewrite, Checker and CodeGen to Frontend). After applying this patch, Clang builds correctly using CMake and shared libraries ("cmake -DBUILD_SHARED_LIBS=ON"). N.B. This patch includes file renames which are indicated in the patch body. Changes in this revision of the patch: - Fixed some copy-paste mistakes in the header files - Modified certain aspects of the coding to comply with the LLVM Coding Standards llvm-svn: 106010
* Add raw_ostream operators to NamedDecl for convenience. Switch over all ↵Benjamin Kramer2010-04-171-23/+23
| | | | | | | | users of getNameAsString on a stream. The next step is to print the name directly into the stream, avoiding a temporary std::string copy. llvm-svn: 101632
* Fronted: Kill overly specialized RecordLayoutDumper, just make ↵Daniel Dunbar2010-04-081-32/+0
| | | | | | -dump-record-layouts a bit that Sema honors. llvm-svn: 100747
* AST: Move C++ record layout dumping to ASTContext::DumpRecordLayout.Daniel Dunbar2010-04-081-121/+8
| | | | llvm-svn: 100746
* Eliminate the ASTContext parameter from RecordDecl::getDefinition()Douglas Gregor2010-02-111-1/+1
| | | | | | | and CXXRecordDecl::getDefinition(); it's totally unnecessary. No functionality change. llvm-svn: 95836
* Add a missing case for DeclContext printer.Zhongxing Xu2010-01-201-0/+5
| | | | llvm-svn: 93973
* Better coverage for -dump-record-layouts and -print-decl-contexts.Eli Friedman2010-01-031-0/+13
| | | | llvm-svn: 92441
* Small compatibility fix for -print-decl-contexts.Eli Friedman2009-12-081-0/+5
| | | | llvm-svn: 90838
* Kill a few more random stderr uses.Daniel Dunbar2009-12-031-3/+1
| | | | llvm-svn: 90441
* Audit the code for places where it is assumed that every base specifier ↵Sebastian Redl2009-10-251-0/+2
| | | | | | refers to a RecordType. Add assertions or conditions as appropriate. This fixes another crash in the Apache stdlib vector. llvm-svn: 85055
* Remove OriginalTypeParmDecl; the original type is the one specifiedJohn McCall2009-10-231-5/+0
| | | | | | | | | | | | | in the DeclaratorInfo, if one is present. Preserve source information through template instantiation. This is made more complicated by the possibility that ParmVarDecls don't have DIs, which is possibly worth fixing in the future. Also preserve source information for function parameters in ObjC method declarations. llvm-svn: 84971
* Don't try to dump invalid decls or forward decls.Anders Carlsson2009-09-261-0/+6
| | | | llvm-svn: 82827
* Who would have thought that empty classes were so tricky? Handle cases where ↵Anders Carlsson2009-09-251-0/+3
| | | | | | an empty virtual base class needs to be moved aside because it conflicts with the first field. llvm-svn: 82746
* Improve the record layout dumper.Anders Carlsson2009-09-241-2/+87
| | | | llvm-svn: 82733
* Add a -dump-record-layouts argument to clang-cc.Anders Carlsson2009-09-241-0/+50
| | | | llvm-svn: 82703
* Eliminate FunctionDecl::getBodyIfAvailableDouglas Gregor2009-09-121-2/+2
| | | | llvm-svn: 81588
* Remove tabs, and whitespace cleanups.Mike Stump2009-09-091-26/+24
| | | | llvm-svn: 81346
* Fix build of clang with gcc-4.4: #include <cstdio> was missing.Torok Edwin2009-08-241-0/+2
| | | | llvm-svn: 79916
* Replace cerr with errs().Benjamin Kramer2009-08-231-5/+4
| | | | llvm-svn: 79854
* remove dead code.Zhongxing Xu2009-06-301-2/+0
| | | | llvm-svn: 74517
* De-ASTContext-ify DeclContext.Argyrios Kyrtzidis2009-06-301-4/+3
| | | | | | | Remove ASTContext parameter from DeclContext's methods. This change cascaded down to other Decl's methods and changes to call sites started "escalating". Timings using pre-tokenized "cocoa.h" showed only a ~1% increase in time run between and after this commit. llvm-svn: 74506
* Remove the ASTContext parameter from the printing related methods of Decl.Argyrios Kyrtzidis2009-06-301-3/+3
| | | | llvm-svn: 74503
* Move CXXMethodDecl::OutOfLineDefinition into Decl::OutOfLine.Argyrios Kyrtzidis2009-06-171-4/+4
| | | | llvm-svn: 73651
* Refactor and clean up the AST printer, so that it uses a DeclVisitor,Douglas Gregor2009-05-301-637/+16
| | | | | | | | | walks through DeclContexts properly, and prints more of the information available in the AST. The functionality is still available via -ast-print, -ast-dump, etc., and also via the new member functions Decl::dump() and Decl::print(). llvm-svn: 72597
* Create a new PrintingPolicy class, which we pass down through the ASTDouglas Gregor2009-05-291-11/+15
| | | | | | | | | printing logic to help customize the output. For now, we use this rather than a special flag to suppress the "struct" when printing "struct X" and to print the Boolean type as "bool" in C++ but "_Bool" in C. llvm-svn: 72590
* AST XML dump, from Olaf Krzikalla!Douglas Gregor2009-05-211-0/+36
| | | | llvm-svn: 72224
* Move ASTConsumers.h to include/clang/Frontend, and move the associated Eli Friedman2009-05-181-0/+1032
.cpp files to lib/Frontend. (As proposed on cfe-dev.) llvm-svn: 72060
OpenPOWER on IntegriCloud