summaryrefslogtreecommitdiffstats
path: root/clang/Parse
Commit message (Collapse)AuthorAgeFilesLines
...
* Invoke actions for postfix exprsChris Lattner2006-08-241-9/+47
| | | | llvm-svn: 38942
* Add AST nodes and actions for paren exprs and simple unary ops.Chris Lattner2006-08-231-3/+21
| | | | llvm-svn: 38940
* Add (basic) expression AST representation capabilities for ↵Chris Lattner2006-08-231-4/+25
| | | | | | | | | int/fp/binops/condexpr. Add callbacks for same. Add "full locinfo" mode. llvm-svn: 38939
* Hook up more of the ASTStreamerChris Lattner2006-08-171-11/+33
| | | | llvm-svn: 38936
* Start adding support for printing out parser callbacks and adding ast buildingChris Lattner2006-08-171-1/+1
| | | | llvm-svn: 38933
* Implement asm statement parsing.Chris Lattner2006-08-152-17/+148
| | | | llvm-svn: 38929
* Fix test/Parser/types.cChris Lattner2006-08-151-3/+7
| | | | llvm-svn: 38928
* Make MatchRHSPunctuation smarter, allowing its clients to be simpler.Chris Lattner2006-08-155-23/+24
| | | | llvm-svn: 38926
* Parse attributes in all places allowed.Chris Lattner2006-08-152-13/+67
| | | | llvm-svn: 38925
* Parse (and ignore) attributes on global decls.Chris Lattner2006-08-151-1/+35
| | | | llvm-svn: 38924
* Allow ExpectAndConsume to be used with any token.Chris Lattner2006-08-151-1/+1
| | | | llvm-svn: 38923
* Parse asm specifiers on init declarators. Add __builtin_va_list to theChris Lattner2006-08-153-11/+79
| | | | | | symbol table at startup time. llvm-svn: 38922
* Correctly implement the check for a typedef nameChris Lattner2006-08-141-1/+1
| | | | llvm-svn: 38921
* "enum x" really is a type specifierChris Lattner2006-08-141-26/+25
| | | | llvm-svn: 38920
* Implement scope tracking for empty-action.Chris Lattner2006-08-141-4/+36
| | | | llvm-svn: 38919
* Fix the last remaining FIXME's in the parser by asking the actions moduleChris Lattner2006-08-143-9/+17
| | | | | | whether or not an identifier is a typedef name. llvm-svn: 38915
* Stub out the EmptyAction class.Chris Lattner2006-08-141-0/+37
| | | | llvm-svn: 38914
* Rename Parse/ParserActions.h -> Parse/Action.hChris Lattner2006-08-141-4/+3
| | | | llvm-svn: 38913
* Inform actions about parsed declarators.Chris Lattner2006-08-142-20/+25
| | | | llvm-svn: 38910
* Add methods for scope manipulation.Chris Lattner2006-08-141-12/+40
| | | | llvm-svn: 38909
* Set TypeSpecType on 'struct x' with no body.Chris Lattner2006-08-131-60/+59
| | | | llvm-svn: 38904
* Recognize struct/union/enum as TypeSpecType'sChris Lattner2006-08-132-0/+15
| | | | llvm-svn: 38903
* implement the GNU case-range extension. Add todo's for other missing gnu ↵Chris Lattner2006-08-132-14/+38
| | | | | | extensions. llvm-svn: 38902
* improve comment.Chris Lattner2006-08-131-1/+3
| | | | llvm-svn: 38901
* Implement initializer parsering.Chris Lattner2006-08-134-22/+224
| | | | llvm-svn: 38900
* Parse things like 'struct X;'Chris Lattner2006-08-134-8/+32
| | | | llvm-svn: 38898
* Parse struct/union specifiers.Chris Lattner2006-08-131-46/+169
| | | | llvm-svn: 38897
* Implement parsing of enum-specifiers.Chris Lattner2006-08-132-13/+82
| | | | llvm-svn: 38896
* Use ExpectAndConsume moreChris Lattner2006-08-122-15/+5
| | | | llvm-svn: 38895
* Add a new ExpectAndConsume method to make parsing easier, and add a newChris Lattner2006-08-122-48/+30
| | | | | | ConsumeAnyToken method. llvm-svn: 38894
* Parse the GNU builtin expressions. This implements ↵Chris Lattner2006-08-121-8/+139
| | | | | | Parser/expressions.c:test_offsetof llvm-svn: 38893
* Implement parsing of array declarators like:Chris Lattner2006-08-123-18/+47
| | | | | | int Array[*(int*)P+A]; llvm-svn: 38890
* Implement parsing of 'int A[X];' by tying into the expression parsing code.Chris Lattner2006-08-121-16/+21
| | | | | | Turn a bunch of fixme's into todo's. llvm-svn: 38888
* Two fixes:Chris Lattner2006-08-122-9/+49
| | | | | | | | | | 1. Allow argument list of a call to be empty. 2. Handle expressions in a statement context that start with an identifier. These are nasty to handle due to the 'label:' production which requires having two tokens of look-ahead, or by having tricky code (which we choose to do). llvm-svn: 38887
* Split postfix-expression suffix handling out into ParsePostfixExpressionSuffixChris Lattner2006-08-121-24/+41
| | | | | | for future use. llvm-svn: 38885
* Implement ParseAssignmentExpression correctlyChris Lattner2006-08-121-6/+9
| | | | llvm-svn: 38884
* remove bogus fixmeChris Lattner2006-08-121-3/+1
| | | | llvm-svn: 38883
* Fix parsing of assignment expressions and handling of right-associativeChris Lattner2006-08-121-5/+9
| | | | | | things. llvm-svn: 38881
* Simplify handling of the ternary operator even more. Now it just looks likeChris Lattner2006-08-121-48/+30
| | | | | | any average right-associative operator to most of the code. llvm-svn: 38880
* Fix incorrect parsing of the ?: middle term, which is supposed to beChris Lattner2006-08-121-9/+13
| | | | | | parsed as 'expression'. This implements test/Parser/statements.c llvm-svn: 38879
* Improve diagnostics on cases like:Chris Lattner2006-08-121-3/+8
| | | | | | | | | return a ? ` a; After the expression is diagnosed, skip to the ';', so that the lack of semicolon is not also diagnosed. llvm-svn: 38877
* Diagnose use of compound literals in C90 codeChris Lattner2006-08-121-1/+3
| | | | llvm-svn: 38876
* cleanups, better comments.Chris Lattner2006-08-121-6/+13
| | | | llvm-svn: 38875
* Implement a first cut at binary expression parsing using a simple operatorChris Lattner2006-08-121-2/+236
| | | | | | precedence-based parser. llvm-svn: 38874
* Return information about whether expression parsing was successfulChris Lattner2006-08-112-86/+94
| | | | llvm-svn: 38873
* Significant improvements to error recoveryChris Lattner2006-08-111-7/+14
| | | | llvm-svn: 38872
* Merge ParsePostfixExpression into ParseCastExpression. This allows us toChris Lattner2006-08-111-142/+135
| | | | | | | | implement support for compound literals followed by postfix-expr suffixes, such as: (struct{ int a;}){ 1}.a llvm-svn: 38871
* Merge ParseUnaryExpression and ParseCastExpression.Chris Lattner2006-08-111-33/+32
| | | | llvm-svn: 38869
* Implement parsing of casts, implementing Parser/statements.c:test6Chris Lattner2006-08-111-4/+7
| | | | llvm-svn: 38868
* Simplify paren parsing, finish parsing of sizeof expressions and other cases.Chris Lattner2006-08-112-44/+56
| | | | llvm-svn: 38866
OpenPOWER on IntegriCloud