summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/RAIIObjectsForParser.h
Commit message (Collapse)AuthorAgeFilesLines
* Implement bracket insertion for Objective-C instance message sends asDouglas Gregor2010-09-151-0/+16
| | | | | | | | | | | | | | | | | | | | | | | part of parser recovery. For example, given: a method1:arg]; we detect after parsing the expression "a" that we have the start of a message send expression. We pretend we've seen a '[' prior to the a, then parse the remainder as a message send. We'll then give a diagnostic+fix-it such as: fixit-objc-message.m:17:3: error: missing '[' at start of message send expression a method1:arg]; ^ [ The algorithm here is very simple, and always assumes that the open bracket goes at the beginning of the message send. It also only works for non-super instance message sends at this time. llvm-svn: 113968
* Make sure parens/braces/brackets are correctly balanced.Argyrios Kyrtzidis2010-06-171-0/+17
| | | | | | | | | | | In a line like: (; the semicolon leaves Parser:ParenCount unbalanced (it's 1 even though we stopped looking for a right paren). This may affect later parsing and result in bad recovery for parsing errors. llvm-svn: 106213
* Privatize class members.Benjamin Kramer2009-12-101-2/+2
| | | | llvm-svn: 91067
* If we enter parens, colons can become un-sacred, allowing us to emitChris Lattner2009-12-101-2/+3
| | | | | | a better diagnostic in the second example. llvm-svn: 91040
* move GreaterThanIsOperatorScope into RAIIObjectsForParser. Add some moreChris Lattner2009-12-101-3/+21
| | | | | | | TODOs for other classes that could be moved out of Parser.h. I don't plan to do these in the near term though. llvm-svn: 91023
* fix PR5740: a colon is sacred when parsing case statement expressions!Chris Lattner2009-12-101-1/+7
| | | | llvm-svn: 91016
* refactor the 'ColonIsSacred' argument to ParseOptionalCXXScopeSpecifierChris Lattner2009-12-101-1/+20
| | | | | | | to be a bool in Parser that is twiddled by the ColonProtectionRAIIObject class. No functionality change. llvm-svn: 91014
* rename ExtensionRAIIObject.h -> RAIIObjectsForParser.hChris Lattner2009-12-101-0/+41
llvm-svn: 91008
OpenPOWER on IntegriCloud