Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Rename SemaDeclSpec.{h|cpp} back to DeclSpec.{h|cpp} now that the distinction | Chris Lattner | 2006-11-11 | 5 | -5/+5 | |
| | | | | | | between sema and parse is clear. llvm-svn: 39167 | |||||
* | remove diag helper that implicitly reports the diagnostic at the current | Chris Lattner | 2006-11-10 | 2 | -3/+3 | |
| | | | | | | token: it is better for the code to be explicit. llvm-svn: 39158 | |||||
* | move semantic analysis of break/continue out of the parser into the sema class. | Chris Lattner | 2006-11-10 | 1 | -21/+2 | |
| | | | | llvm-svn: 39157 | |||||
* | update comment | Chris Lattner | 2006-11-09 | 1 | -4/+2 | |
| | | | | llvm-svn: 39151 | |||||
* | Change courses on how we do semantic analysis. Semantic analysis | Chris Lattner | 2006-11-09 | 3 | -218/+4 | |
| | | | | | | | | fundamentally requires having an AST around, so move all sema to the AST library. This is the first step, later steps will be needed to clean up libast. llvm-svn: 39150 | |||||
* | rename SemaDecl.cpp/h to SemaDeclSpec.cpp/h | Chris Lattner | 2006-11-08 | 5 | -9/+14 | |
| | | | | llvm-svn: 39149 | |||||
* | rename these methods so that they read correctly. | Chris Lattner | 2006-11-08 | 2 | -18/+18 | |
| | | | | llvm-svn: 39148 | |||||
* | split ParseStringExpr into semantic/minimal actions | Chris Lattner | 2006-11-08 | 1 | -3/+9 | |
| | | | | llvm-svn: 39147 | |||||
* | implement trivial scope caching. This reduces malloc traffic in the common | Chris Lattner | 2006-11-06 | 2 | -7/+29 | |
| | | | | | | | | | | | | | | | | | | | | | case, speeding up parsing of this contrived example: #define A {{}} #define B A A A A A A A A A A #define C B B B B B B B B B B #define D C C C C C C C C C C #define E D D D D D D D D D D #define F E E E E E E E E E E #define G F F F F F F F F F F #define H G G G G G G G G G G void foo() { H } from 7.478s to 4.321s. GCC requires 8.2s. llvm-svn: 39138 | |||||
* | Make Scope keep track of the kind of scope it is. Properly scope loop and | Chris Lattner | 2006-11-05 | 2 | -10/+72 | |
| | | | | | | | switch statements. Make break/continue check that they are inside of an appropriate control-flow construct. This implements Parser/bad-control.c. llvm-svn: 39136 | |||||
* | eliminate EmptyAction, merging it into MinimalAction instead. | Chris Lattner | 2006-11-05 | 1 | -13/+12 | |
| | | | | llvm-svn: 39134 | |||||
* | start factoring actions into two flavors: minimal and semantic actions. | Chris Lattner | 2006-11-05 | 2 | -5/+17 | |
| | | | | llvm-svn: 39133 | |||||
* | rename a bunch of files for better consistency | Chris Lattner | 2006-11-05 | 7 | -11/+11 | |
| | | | | llvm-svn: 39126 | |||||
* | need to add scope for arguments, but now is not the right time. | Chris Lattner | 2006-11-05 | 1 | -0/+8 | |
| | | | | llvm-svn: 39125 | |||||
* | Move objc productions to their own .cpp file. | Chris Lattner | 2006-11-05 | 2 | -85/+105 | |
| | | | | llvm-svn: 39124 | |||||
* | improve objc comments | Chris Lattner | 2006-11-05 | 1 | -7/+15 | |
| | | | | llvm-svn: 39123 | |||||
* | silence warning | Chris Lattner | 2006-11-04 | 1 | -0/+1 | |
| | | | | llvm-svn: 39115 | |||||
* | Add AST node, AST building, actions, and printing for 'for' stmts. | Chris Lattner | 2006-11-04 | 2 | -21/+40 | |
| | | | | llvm-svn: 39113 | |||||
* | implement some todo's: invoke the actions module for identifiers leading | Chris Lattner | 2006-11-04 | 1 | -4/+6 | |
| | | | | | | expressions in stmt contexts. llvm-svn: 39112 | |||||
* | replace some ugly alloca/malloc code with a couple of SmallString's. | Chris Lattner | 2006-11-03 | 1 | -24/+11 | |
| | | | | llvm-svn: 39103 | |||||
* | improve comment, fit to 80 cols | Chris Lattner | 2006-11-03 | 1 | -9/+12 | |
| | | | | llvm-svn: 39101 | |||||
* | Emit: | Chris Lattner | 2006-11-03 | 1 | -15/+21 | |
| | | | | | | | | | | test.m:2:14: error: expected ';' after @class @ class foo int x; ^ instead of silently accepting the malformed input. llvm-svn: 39100 | |||||
* | Fix case stmts to not fall through, rename methods, assert on unimplemented | Chris Lattner | 2006-11-03 | 1 | -25/+31 | |
| | | | | | | | | | | pieces, emit a diagnostic like this: test.m:4:1: error: unexpected '@' in program @ foo; ^ llvm-svn: 39099 | |||||
* | - Added basic structure for parsing top level Objective-C forms. | Steve Naroff | 2006-10-27 | 4 | -27/+131 | |
| | | | | | | | - Extended the typedef mechanism for classes, improved performance of the common case. - Implemented @class in the parser. llvm-svn: 39074 | |||||
* | Remove GNU C++ min/max operator extension support, they have been removed | Chris Lattner | 2006-10-27 | 1 | -8/+5 | |
| | | | | | | from gcc mainline. llvm-svn: 39067 | |||||
* | Fix these to allow clang to be in any dir. | Chris Lattner | 2006-10-26 | 1 | -1/+1 | |
| | | | | llvm-svn: 39055 | |||||
* | llvm has no EH by default, no need for these flags. | Chris Lattner | 2006-10-25 | 1 | -1/+1 | |
| | | | | llvm-svn: 39047 | |||||
* | Finish removing LexerToken from actions interface | Chris Lattner | 2006-10-25 | 1 | -8/+14 | |
| | | | | llvm-svn: 39044 | |||||
* | Start removing LexerToken from the actions interface. | Chris Lattner | 2006-10-25 | 2 | -18/+21 | |
| | | | | llvm-svn: 39043 | |||||
* | Compoundstmts imply a scope, track it. This implements | Chris Lattner | 2006-10-25 | 1 | -0/+5 | |
| | | | | | | test/Parser/CompoundStmtScope.c llvm-svn: 39042 | |||||
* | remove empty file | Chris Lattner | 2006-10-25 | 1 | -0/+0 | |
| | | | | llvm-svn: 39039 | |||||
* | accept the __extension__ prefix expr | Chris Lattner | 2006-10-20 | 1 | -1/+2 | |
| | | | | llvm-svn: 39018 | |||||
* | silence a warning | Chris Lattner | 2006-10-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 39007 | |||||
* | fix test/Parser/attributes.c | Chris Lattner | 2006-10-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 39001 | |||||
* | Make ConsumeFoo methods return the location of the consumed token. | Chris Lattner | 2006-10-16 | 5 | -44/+23 | |
| | | | | llvm-svn: 38995 | |||||
* | Make ConsumeToken return the loc of the consumed token to simplify clients | Chris Lattner | 2006-10-16 | 3 | -53/+28 | |
| | | | | llvm-svn: 38994 | |||||
* | implement action callbacks for almost all the stmts. | Chris Lattner | 2006-10-16 | 2 | -93/+189 | |
| | | | | llvm-svn: 38993 | |||||
* | Changes through out the parser and actions/ast interface to return top-level | Chris Lattner | 2006-10-16 | 3 | -24/+41 | |
| | | | | | | | | | | | | | | | | | | declarations through the asm streamer. For a testcase like: int G; int H, I, *J; int func() {} 'clang -parse-print-ast' prints: Read top-level decl: G Read top-level decl: H Read top-level decl: I Read top-level decl: J Read top-level decl: func llvm-svn: 38992 | |||||
* | start creating proper ast nodes for variables and functions | Chris Lattner | 2006-10-15 | 2 | -2/+3 | |
| | | | | llvm-svn: 38991 | |||||
* | create an ast node for &&label | Chris Lattner | 2006-10-15 | 1 | -5/+8 | |
| | | | | llvm-svn: 38989 | |||||
* | Write up TargetInfo so that use of wchar_t strings results in a warning if | Chris Lattner | 2006-10-14 | 1 | -4/+12 | |
| | | | | | | used in a target set where the size is not identical. llvm-svn: 38975 | |||||
* | Rename LexerToken methods to be more consistent. | Chris Lattner | 2006-10-14 | 1 | -1/+1 | |
| | | | | llvm-svn: 38969 | |||||
* | Parse ?:'s right | Chris Lattner | 2006-10-06 | 1 | -2/+2 | |
| | | | | llvm-svn: 38961 | |||||
* | Initial support for semantic analysis and AST building for StringExpr nodes. | Chris Lattner | 2006-10-06 | 3 | -21/+227 | |
| | | | | llvm-svn: 38960 | |||||
* | Build AST's for sizeof/alignof with type operands. | Chris Lattner | 2006-08-24 | 1 | -4/+4 | |
| | | | | llvm-svn: 38951 | |||||
* | Build CastExpr AST nodes | Chris Lattner | 2006-08-24 | 3 | -25/+49 | |
| | | | | llvm-svn: 38950 | |||||
* | Build AST's for sizeof/alignof an expr. | Chris Lattner | 2006-08-24 | 1 | -8/+23 | |
| | | | | llvm-svn: 38949 | |||||
* | switch MemberExpr to holding a field decl instead of a raw identifier. | Chris Lattner | 2006-08-24 | 1 | -1/+0 | |
| | | | | llvm-svn: 38948 | |||||
* | Add initial support for simple-primary exprs, including DeclExprs. | Chris Lattner | 2006-08-24 | 1 | -2/+1 | |
| | | | | llvm-svn: 38944 | |||||
* | Add AST nodes for array, call, . and ->. | Chris Lattner | 2006-08-24 | 1 | -3/+5 | |
| | | | | llvm-svn: 38943 |