summaryrefslogtreecommitdiffstats
path: root/clang/test/Parser
Commit message (Collapse)AuthorAgeFilesLines
...
* fix PR8380, a crash on invalid due to an illogical DeclSpec SourceRange ↵Chris Lattner2010-11-091-0/+11
| | | | | | being constructed. llvm-svn: 118625
* Diagnose a coherant message when @interfaceFariborz Jahanian2010-11-021-0/+19
| | | | | | | does not terminate with @end. // rdar: //7824372 llvm-svn: 117991
* Treat __extension__ like ParenExpr.Abramo Bagnara2010-10-151-1/+2
| | | | llvm-svn: 116569
* When we are missing the ',' or '>' to terminate a template parameterDouglas Gregor2010-10-151-1/+3
| | | | | | list, complain about it! Fixes PR7053. llvm-svn: 116551
* Replace \r\n with \n in this file.Nick Lewycky2010-10-121-25/+25
| | | | llvm-svn: 116312
* Add parsing support for Microsoft attributes. MS attributes will just be ↵Francois Pichet2010-10-112-0/+33
| | | | | | skipped and not inserted into the AST for now. llvm-svn: 116203
* Add 2 Microsoft compiler intrinsics that don't require prototypes:Francois Pichet2010-10-111-0/+8
| | | | | | | __assume __noop llvm-svn: 116202
* _inline is an alias for inline in MSVC.Francois Pichet2010-10-061-0/+1
| | | | llvm-svn: 115785
* enhance tentative parsing to handle ms extensions, patch by Martin Vejnar!Chris Lattner2010-09-281-0/+4
| | | | llvm-svn: 115004
* Revert r114316, -Wunused-value enabled by default was intended.Argyrios Kyrtzidis2010-09-193-11/+20
| | | | llvm-svn: 114318
* Make -Wunused-value off by default, matching GCC. Fixes rdar://7126194.Argyrios Kyrtzidis2010-09-193-20/+11
| | | | llvm-svn: 114316
* Added '|' delimiter to separate inline asm multiple alternative constraints ↵John Thompson2010-09-181-1/+1
| | | | | | for Clang side of support. llvm-svn: 114253
* Add more error checking to attribute vecreturnJohn Thompson2010-09-181-0/+17
| | | | llvm-svn: 114251
* Microsoft's __uuidof operator implementation part 1.Francois Pichet2010-09-081-1/+38
| | | | llvm-svn: 113356
* Improve error recovery when we see ':' and expect a ';'.John McCall2010-09-072-1/+7
| | | | | | I, at least, make this typo all the time. llvm-svn: 113243
* Revert my user-defined literal commits - r1124{58,60,67} pendingAlexis Hunt2010-08-301-2/+2
| | | | | | some issues being sorted out. llvm-svn: 112493
* Fix some test-breaking that snuck into my previous commitAlexis Hunt2010-08-291-2/+2
| | | | llvm-svn: 112460
* Implement C++0x user-defined string literals.Alexis Hunt2010-08-291-2/+2
| | | | | | | | | | The extra data stored on user-defined literal Tokens is stored in extra allocated memory, which is managed by the PreprocessorLexer because there isn't a better place to put it that makes sure it gets deallocated, but only after it's used up. My testing has shown no significant slowdown as a result, but independent testing would be appreciated. llvm-svn: 112458
* ...I forgot to check my new test after adding it, and lo, there's slightly ↵John McCall2010-08-261-1/+1
| | | | | | | | different behavior in C than in C++ (which is what the original test case was). llvm-svn: 112199
* Make sure we clear TypeSpecOwned when setting TypeSpecType to something whenJohn McCall2010-08-261-0/+3
| | | | | | it might previously have been a tag TST. llvm-svn: 112196
* Preserve invalidity of typeof operands in C++.John McCall2010-08-241-0/+6
| | | | llvm-svn: 111999
* Fix a crash when parsing malformed out-of-line member function Fariborz Jahanian2010-08-161-0/+7
| | | | | | definition. radar 8307865. llvm-svn: 111163
* Fix for pr7869, inline asm mult-alt constraints.John Thompson2010-08-111-0/+45
| | | | llvm-svn: 110764
* Added vecreturn attribute parsing.John Thompson2010-08-091-0/+35
| | | | llvm-svn: 110609
* Change warning about incomplete parsing of C++ default arg to error and ↵Argyrios Kyrtzidis2010-08-091-0/+4
| | | | | | provide a test case; thanks Doug! llvm-svn: 110603
* Introduce a new token kind 'cxx_defaultarg_end' to mark the end of C++ ↵Argyrios Kyrtzidis2010-08-061-0/+3
| | | | | | | | | | | | | | | | default arguments that were part of lexed method declarations. This avoid interference with tokens coming after the point where the default arg tokens were 'injected', e.g. for typedef struct Inst { void m(int x=0); } *InstPtr; when parsing '0' the next token would be '*' and things would be messed up. llvm-svn: 110436
* Allow multiple __declspec attributes after a class-key.John McCall2010-08-051-0/+1
| | | | | | Patch by Francois Pichet! llvm-svn: 110344
* Tests for #pragma GCC visibility.Eli Friedman2010-08-051-0/+9
| | | | llvm-svn: 110316
* Convert this file to not have Windows line endings -- likely committed fromChandler Carruth2010-08-051-9/+9
| | | | | | Windows without svn:eol-style=native. llvm-svn: 110308
* Parser: Add support for #pragma align, which is just another spelling of #pragmaDaniel Dunbar2010-07-311-0/+10
| | | | | | options align. llvm-svn: 109952
* The grammar for GNU typeof in C requires an expression to beDouglas Gregor2010-07-281-0/+7
| | | | | | | | | | | | | parenthesized, unlike in C++, e.g., C has: typeof ( expression) C++ has: typeof unary-expression So, once we've parsed a parenthesized expression after typeof, we should only go on to parse the postfix expression suffix if we're in C++. Fixes <rdar://problem/8237491>. llvm-svn: 109606
* Eliminate the "minimal" and printing parser actions, which only everDouglas Gregor2010-07-2611-41/+47
| | | | | | | worked for C anyway. Also kills the -cc1 options -parse-noop and -parse-print-callbacks. llvm-svn: 109392
* Fix PR7673 by allowing an empty clobbers section in an ASM statement.Chandler Carruth2010-07-221-1/+2
| | | | llvm-svn: 109087
* Revert Microsoft-specific override of the "typedef requires a name"Douglas Gregor2010-07-161-1/+1
| | | | | | | diagnostic. Instead, put it and the "declaration does not declare anything" warning into -Wmissing-declarations. llvm-svn: 108527
* Suppress the "typedef requires a name" warning in Microsoft-extensions modeDouglas Gregor2010-07-161-0/+1
| | | | llvm-svn: 108526
* When we're performing tentative parsing to determine whether theDouglas Gregor2010-07-152-0/+26
| | | | | | | | | | | | | | | | parser is looking at a declaration or an expression, use a '=' to conclude that we are parsing a declaration. This is wrong. However, our previous approach of finding a comma after the '=' is also wrong, because the ',' could be part of a template-argument-list. So, for now we're going to use the same wrong heuristic as GCC and Visual C++, because less real-world code is likely to be broken this way. I've opened PR7655 to keep track of our wrongness; note also the XFAIL'd test. Fixes <rdar://problem/8193163>. llvm-svn: 108459
* Complain when an unnamed enumeration has no enumerations (inDouglas Gregor2010-07-131-1/+1
| | | | | | C++). Fixes PR7466. llvm-svn: 108231
* we do in fact have to cache the EOF token returned by the preprocessor.Chris Lattner2010-07-121-0/+4
| | | | | | | | | | In the case of backtracking, the cached token lexer will be the only lexer on the stack, without this the token stack will be empty and EOF won't be returned. This fixes PR7072. llvm-svn: 108124
* revert a hunk of code that Argiris added in r106213, which is theChris Lattner2010-07-121-0/+6
| | | | | | | root cause of PR7481 and probably more, and has no apparent testcases. I don't understand the logic here so I can't repair it. llvm-svn: 108119
* change the 'invalid token after top level declarator' message to beChris Lattner2010-07-111-1/+1
| | | | | | 'expected ';' after top level declarator' which is much less vague. llvm-svn: 108106
* Fix PR7617 by not entering ParseFunctionDefinition whenChris Lattner2010-07-111-0/+8
| | | | | | | | | | | | | | | | | | | | | a function prototype is followed by a declarator if we aren't parsing a K&R style identifier list. Also, avoid skipping randomly after a declaration if a semicolon is missing. Before we'd get: t.c:3:1: error: expected function body after function declarator void bar(); ^ Now we get: t.c:1:11: error: invalid token after top level declarator void foo() ^ ; llvm-svn: 108105
* Fix vector literal/cast confusion - bug 6895.John Thompson2010-06-302-0/+16
| | | | llvm-svn: 107347
* Fix rdar://8139785 "implement warning on dead expression in comma operator"Argyrios Kyrtzidis2010-06-301-2/+4
| | | | | | | | | | As a bonus, fix the warning for || and && operators; it was emitted even if one of the operands had side effects, e.g: x || test_logical_foo1(); emitted a bogus "expression result unused" for 'x'. llvm-svn: 107274
* improve altivec vector bool/pixel support, patch by Anton YartsevChris Lattner2010-06-232-11/+32
| | | | | | with several tweaks by me. llvm-svn: 106619
* Fix PR7180.Argyrios Kyrtzidis2010-06-221-0/+3
| | | | | | | | | | | For void f( a::b::c ); we would cache the tokens "a::b::" but then we would try to annotate them using the range "a::". Before annotating them with the (invalid) C++ scope spec, set it to the range of "a::b::". llvm-svn: 106536
* Allow an asm label specifier on C++ methods, like GCC does.Chris Lattner2010-06-131-0/+4
| | | | | | Patch by David Majnemer! llvm-svn: 105909
* Don't try to parse class template specializations in C. It can onlyDouglas Gregor2010-05-301-0/+3
| | | | | | lead to heartache. Fixes <rdar://problem/8044088>. llvm-svn: 105178
* Sema: Just ignore '#pragma options align=power' for now, this is no worse thanDaniel Dunbar2010-05-281-1/+1
| | | | | | | what we used to be doing, and makes sure that paired '#pragma options align=reset' won't fail. llvm-svn: 104998
* Sema: Add initial support for '#pragma options align=mac68k'.Daniel Dunbar2010-05-271-1/+1
| | | | | | | - Docs are fairly sketchy, if someone wants to pore through gcc to look for holes I'd appreciate any failing test cases! llvm-svn: 104809
* Sema: Reject '#pragma options align=mac68k' everywhere except i386-apple-darwin.Daniel Dunbar2010-05-271-1/+1
| | | | llvm-svn: 104789
OpenPOWER on IntegriCloud