summaryrefslogtreecommitdiffstats
path: root/clang/Parse/ParseStmt.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make a major restructuring of the clang tree: introduce a top-levelChris Lattner2008-03-151-1159/+0
| | | | | | | | | | lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. llvm-svn: 48402
* handle __extension__ properly at block scope.Chris Lattner2008-03-131-2/+8
| | | | llvm-svn: 48332
* instead of passing in null end location info, pass in the same as start.Chris Lattner2008-03-131-3/+3
| | | | | | This still isn't right, but is slightly nicer. llvm-svn: 48331
* improve DeclStmt to be able to store SourceRange info correctly.Chris Lattner2008-03-131-4/+16
| | | | | | | Set the start of DeclStmt range. Right now the end is meaningless though. llvm-svn: 48330
* Several cleanups surrounding Parser::ParseAsmStatement() and ↵Steve Naroff2008-02-111-2/+16
| | | | | | Parser::FuzzyParseMicrosoftAsmStatement(). llvm-svn: 46977
* Behave correctly if a constraint expression is invalid.Anders Carlsson2008-02-091-10/+15
| | | | llvm-svn: 46910
* Use getLogicalLineNumber() in FuzzyParseMicrosoftAsmStatement(), it's more ↵Steve Naroff2008-02-081-15/+7
| | | | | | general and simplifies the code. llvm-svn: 46885
* Support fuzzy parsing MS line-oriented __asm's that originate from a macro ↵Steve Naroff2008-02-081-5/+16
| | | | | | (a case where we can't obtain source line info). As the test case indicates, we don't currently support line-oriented asm statements that mix file/macro body tokens. llvm-svn: 46878
* - Add support for fuzzy parsing line-oriented __asm's (yuck).Steve Naroff2008-02-071-5/+17
| | | | | | - Change handling of __w64 to a built-in macro. llvm-svn: 46864
* Implement -fms-extensions. This allows us to fuzzy parse non-standard MS ↵Steve Naroff2008-02-071-2/+16
| | | | | | constructs used in "windows.h". llvm-svn: 46838
* Handle simple asm statements correctly.Anders Carlsson2008-02-051-26/+36
| | | | llvm-svn: 46777
* Fix Parser::ParseObjCTryStmt() to allow for trailing @-keyword ↵Steve Naroff2008-02-051-17/+1
| | | | | | | | statements/expressions. This bug fix is the result of not having 2-token lookahead to recognize specific @-keywords. llvm-svn: 46768
* Fix http://llvm.org/bugs/show_bug.cgi?id=1967.Steve Naroff2008-01-311-3/+1
| | | | llvm-svn: 46616
* Bunch of type defs, etc. for @synchronized.Fariborz Jahanian2008-01-291-1/+3
| | | | llvm-svn: 46520
* Substituted all instances of the string "Objc" for "ObjC". This fixesTed Kremenek2008-01-071-1/+1
| | | | | | | some naming inconsistencies in the names of classes pertaining to Objective-C support in clang. llvm-svn: 45715
* Added a comment, minor refactoring of foreach parsing code per Chris's ↵Fariborz Jahanian2008-01-041-10/+10
| | | | | | suggestion. llvm-svn: 45601
* Minor changes as suggested by Chris L.Fariborz Jahanian2008-01-041-2/+2
| | | | llvm-svn: 45598
* Patch to parse/build AST ObjC2's foreach statement.Fariborz Jahanian2008-01-031-31/+51
| | | | llvm-svn: 45539
* Don't attribute in file headers anymore. See llvmdev for theChris Lattner2007-12-291-2/+2
| | | | | | discussion of this change. llvm-svn: 45410
* Fix a crash on a top-level objc string, patch by Nico WeberChris Lattner2007-12-271-2/+2
| | | | llvm-svn: 45370
* remove todoChris Lattner2007-12-121-1/+0
| | | | llvm-svn: 44922
* Test commitSeo Sanghyeon2007-12-011-1/+1
| | | | llvm-svn: 44488
* Keep track of whether the asm is volatile or not.Anders Carlsson2007-11-231-2/+2
| | | | llvm-svn: 44297
* Store output and input operands as well as clobber information in the ↵Anders Carlsson2007-11-221-14/+44
| | | | | | AsmStmt. Ted, could you please review the serialization/deserialization code? llvm-svn: 44266
* GCC fails if there is a trailing colon but no clobbers.Anders Carlsson2007-11-211-7/+5
| | | | llvm-svn: 44265
* Store inline asm code in the AST.Anders Carlsson2007-11-201-3/+5
| | | | llvm-svn: 44255
* Replace 2 method definition actions (ActOnFunctionDefBody, ↵Steve Naroff2007-11-111-1/+1
| | | | | | ActOnMethodDefBody) with 1 method definition action (ActOnFinishFunctionBody). I can't think of any reason that we would need two action hooks. llvm-svn: 44000
* Refactored parsing of main function body for reuse by objective-c methods.Fariborz Jahanian2007-11-081-0/+18
| | | | llvm-svn: 43898
* More support for rewriting ObjC intefaces. Still some edge cases to handle...Steve Naroff2007-10-301-1/+2
| | | | llvm-svn: 43493
* improve error recovery handling broken 'then' or 'else' stmts in Chris Lattner2007-10-291-10/+27
| | | | | | | | if statements. This implements Sema/if-empty-body.c:f3, silencing a bogus secondary warning. It also improve the location info for the nullstmts created for recovery purposes. llvm-svn: 43440
* Fix a parser bug on labeled inline asm stmts, allowing usChris Lattner2007-10-291-0/+4
| | | | | | | | | | | | | | | | | | | | | to parse stuff like: asm volatile("1: rex64/fxrstor (%[fx])\n\t" "2:\n" ".section .fixup,\"ax\"\n" "3: movl $-1,%[err]\n" " jmp 2b\n" ".previous\n" ".section __ex_table,\"a\"\n" " .align 8\n" " .quad 1b,3b\n" ".previous" : [err] "=r" (err) : [fx] "cdaSDb" (fx), "m" (*fx), "0" (0)); This reduces # diagnostics on PR1750 from 49 to 37. llvm-svn: 43434
* Implement *skeletal* support for representing GNU inline asm stmts in the AST,Chris Lattner2007-10-291-4/+4
| | | | | | | resolving a crash on a .i file in PR1750. We now generate 49 errors on the .i file in that bug. llvm-svn: 43433
* Implemented parsing of objctive-c protocol conforming type used in Fariborz Jahanian2007-10-111-0/+10
| | | | | | | an identifier statement. Fixed up pretty priting to print this type correctly. llvm-svn: 42866
* switch more code to use Token::is/isNot where possible.Chris Lattner2007-10-091-57/+57
| | | | llvm-svn: 42797
* this patch accomodates clattner's comments on expression processing in ↵Fariborz Jahanian2007-10-041-9/+18
| | | | | | @try-statement. llvm-svn: 42611
* Patch to parse objective-c's @try-statement and @throw-statement.Fariborz Jahanian2007-09-191-3/+16
| | | | llvm-svn: 42148
* Rename statement actions (from Parse-prefix to ActOn-prefix).Steve Naroff2007-09-161-31/+31
| | | | llvm-svn: 42000
* Rename expression actions (from Parse-prefix to ActOn-prefix).Steve Naroff2007-09-161-1/+1
| | | | llvm-svn: 41997
* Fix a bug/missing-feature Ted noticed: the 'unused' warning should notChris Lattner2007-08-311-4/+4
| | | | | | | | | | warn about the last stmt in a stmtexpr, f.e. there should be no warning for: int maxval_stmt_expr(int x, int y) { return ({int _a = x, _b = y; _a > _b ? _a : _b; }); } llvm-svn: 41655
* extwarn about decls intermixed with code in c89 mode.Chris Lattner2007-08-271-3/+0
| | | | llvm-svn: 41477
* implement a fixme: __extension__ marker on decls in compound stmts.Chris Lattner2007-08-271-3/+39
| | | | llvm-svn: 41473
* Fix test/Parser/if-scope-*.c. Patch by Neil Booth!Chris Lattner2007-08-261-8/+35
| | | | llvm-svn: 41471
* Break the assumption that any sort of scope (e.g. a loop scope) can Chris Lattner2007-08-261-12/+13
| | | | | | | | hold declarations. Instead, introduce a new "DeclScope" scope type that holds them explicitly. For now, all scopes have this bit, but in the future we can use them to fix some issues Neil noticed. llvm-svn: 41431
* optimize scope push/pop to avoid work in the common case.Chris Lattner2007-08-221-18/+31
| | | | llvm-svn: 41265
* Fix the scoping issue Neil pointed out for the rest ofChris Lattner2007-08-221-4/+32
| | | | | | | the selection statements and iteration statements. Add spec citations. llvm-svn: 41264
* Fix a nasty C99 scope issue that Neil pointed out (for ifs)Chris Lattner2007-08-221-0/+14
| | | | | | This fixes test/Parser/control-scope.c llvm-svn: 41263
* Refactor switch analysis to make it possible to detect duplicate case valuesAnders Carlsson2007-07-221-3/+13
| | | | llvm-svn: 40388
* Catch goto's with a missing identifier, patch by Neil Booth.Chris Lattner2007-07-221-0/+4
| | | | llvm-svn: 40381
* At one point there were going to be lexer and parser tokens.Chris Lattner2007-07-201-1/+1
| | | | | | | Since that point is now long gone, we should rename LexerToken to Token, as it is the only kind of token we have. llvm-svn: 40105
* Add initial switch stmt support, patch by Anders Carlsson!Chris Lattner2007-07-181-1/+1
| | | | llvm-svn: 39989
OpenPOWER on IntegriCloud