summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/DeclSpec.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Forgotten part of previous commit.Abramo Bagnara2011-03-121-4/+4
| | | | llvm-svn: 127536
* Teach libclang's token-annotation logic about context-sensitiveDouglas Gregor2011-03-081-0/+2
| | | | | | keywords for Objective-C+ and C++0x. llvm-svn: 127253
* Improved type source location for long long type.Abramo Bagnara2011-03-061-4/+6
| | | | llvm-svn: 127132
* Propagate new-style exception spec information to Declarator.Sebastian Redl2011-03-051-26/+39
| | | | llvm-svn: 127111
* Fix PR9390 in not one, but two ways:Douglas Gregor2011-03-031-1/+1
| | | | | | | | | | | | | | 1) When we do an instantiation of the injected-class-name type, provide a proper source location. This is just plain good hygiene. 2) When we're building a NestedNameSpecifierLoc from a CXXScopeSpec, only return an empty NestedNameSpecifierLoc if there's no representation. Both problems contributed to the horrible test case in PR9390 that I couldn't reduce down to something palatable. llvm-svn: 126961
* Refactor the construction of nested-name-specifiers withDouglas Gregor2011-02-281-167/+19
| | | | | | | | | | source-location information into a NestedNameSpecifierLocBuilder class, which lives within the AST library and centralize all knowledge of the format of nested-name-specifier location information here. No functionality change. llvm-svn: 126716
* Use NestedNameSpecifierLoc within out-of-line variables, function, andDouglas Gregor2011-02-251-1/+2
| | | | | | | tag definitions. Also, add support for template instantiation of NestedNameSpecifierLocs. llvm-svn: 126470
* Retain complete source-location information for C++Douglas Gregor2011-02-241-0/+189
| | | | | | | | | | | | nested-name-specifiers throughout the parser, and provide a new class (NestedNameSpecifierLoc) that contains a nested-name-specifier along with its type-source information. Right now, this information is completely useless, because we don't actually store the source-location information anywhere in the AST. Call this Step 1/N. llvm-svn: 126391
* Teach NestedNameSpecifier to keep track of namespace aliases the sameDouglas Gregor2011-02-241-0/+9
| | | | | | | | way it keeps track of namespaces. Previously, we would map from the namespace alias to its underlying namespace when building a nested-name-specifier, losing source information in the process. llvm-svn: 126358
* Teach CXXScopeSpec to handle the extension of a nested-name-specifierDouglas Gregor2011-02-241-0/+37
| | | | | | | | | with another component in the nested-name-specifiers, updating its representation (a NestedNameSpecifier) and source-location information (currently a SourceRange) simultaneously. This is groundwork for adding source-location information to nested-name-specifiers. llvm-svn: 126346
* Reject forbidden storage class specifiers in OpenCL. Patch by George Russell!Peter Collingbourne2011-02-111-1/+19
| | | | llvm-svn: 125399
* Rvalue references for *this: parse ref-qualifiers.Douglas Gregor2011-01-261-0/+4
| | | | llvm-svn: 124276
* Parse class-virt-specifier-seqs.Anders Carlsson2011-01-221-5/+4
| | | | llvm-svn: 124036
* More work on ClassVirtSpecifiers.Anders Carlsson2011-01-221-2/+31
| | | | llvm-svn: 124035
* Start stubbing out a ClassVirtSpecifiers class.Anders Carlsson2011-01-221-9/+8
| | | | llvm-svn: 124032
* Change ParseOptionalCXX0XVirtSpecifierSeq to take a VirtSpecifiers struct.Anders Carlsson2011-01-171-0/+28
| | | | | | | Enforce C++[class.mem]p8: A virt-specifier-seq shall contain at most one of each virt-specifier. llvm-svn: 123611
* Refactor how we collect attributes during parsing, and add slots for attributesJohn McCall2010-12-241-2/+4
| | | | | | | on array and function declarators. This is pretty far from complete, and I'll revisit it later if someone doesn't beat me to it. llvm-svn: 122535
* Refactoring of Diagnostic class.Argyrios Kyrtzidis2010-11-181-13/+12
| | | | | | | | | | | -Move the stuff of Diagnostic related to creating/querying diagnostic IDs into a new DiagnosticIDs class. -DiagnosticIDs can be shared among multiple Diagnostics for multiple translation units. -The rest of the state in Diagnostic object is considered related and tied to one translation unit. -Have Diagnostic point to the SourceManager that is related with. Diagnostic can now accept just a SourceLocation instead of a FullSourceLoc. -Reflect the changes to various interfaces. llvm-svn: 119730
* Implement the C++0x "trailing return type" feature, e.g.,Douglas Gregor2010-10-011-1/+3
| | | | | | | | | | auto f(int) -> int from Daniel Wallin! (With a few minor bug fixes from me). llvm-svn: 115322
* Make sure we clear TypeSpecOwned when setting TypeSpecType to something whenJohn McCall2010-08-261-0/+6
| | | | | | it might previously have been a tag TST. llvm-svn: 112196
* Abstract out passing around types and kill off ActionBase.John McCall2010-08-241-10/+61
| | | | llvm-svn: 111901
* DeclPtrTy -> Decl *John McCall2010-08-211-3/+3
| | | | llvm-svn: 111733
* Another step in the process of making the parser depend on Sema:John McCall2010-08-201-0/+610
- move DeclSpec &c into the Sema library - move ParseAST into the Parse library Reflect this change in a thousand different includes. Reflect this change in the link orders. llvm-svn: 111667
OpenPOWER on IntegriCloud