#
2bf7fdb7 |
| 02-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
s/CPlusPlus0x/CPlusPlus11/g
llvm-svn: 171367
|
Revision tags: llvmorg-3.2.0, llvmorg-3.2.0-rc3 |
|
#
3a02247d |
| 04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all of Clang's files under 'lib', and fix up the broken headers uncovered.
This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/util
Sort all of Clang's files under 'lib', and fix up the broken headers uncovered.
This required manually correcting all of the incorrect main-module headers I could find, and running the new llvm/utils/sort_includes.py script over the files.
I also manually added quite a few missing headers that were uncovered by shuffling the order or moving headers up to be main-module-headers.
llvm-svn: 169237
show more ...
|
Revision tags: llvmorg-3.2.0-rc2, llvmorg-3.2.0-rc1 |
|
#
cc4c49dd |
| 23-Aug-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Now that ASTMultiPtr is nothing more than a array reference, make it a MutableArrayRef.
This required changing all get() calls to data() and using the simpler constructors.
llvm-svn: 162501
|
#
62b95d88 |
| 23-Aug-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Rip out remnants of move semantic emulation and smart pointers in Sema.
These were nops for quite a while and only lead to confusion. ASTMultiPtr now behaves like a proper dumb array reference.
llv
Rip out remnants of move semantic emulation and smart pointers in Sema.
These were nops for quite a while and only lead to confusion. ASTMultiPtr now behaves like a proper dumb array reference.
llvm-svn: 162475
show more ...
|
#
1edf5763 |
| 28-Jun-2012 |
Douglas Gregor <dgregor@apple.com> |
Support the use of "=delete" and "=default" with delayed template parsing. Fixes <rdar://problem/11700604>.
llvm-svn: 159380
|
#
2b013185 |
| 10-Jun-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR13064: Store whether an in-class initializer uses direct or copy initialization, and use that information to produce the right kind of initialization during template instantiation.
llvm-svn: 158288
|
#
1d373c65 |
| 17-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
CXXThisScopeRAII objects aren't free, don't compute one if it's unused.
llvm-svn: 156987
|
Revision tags: llvmorg-3.1.0, llvmorg-3.1.0-rc3 |
|
#
2ec85375 |
| 07-May-2012 |
John McCall <rjmccall@apple.com> |
Refactor DelayedDiagnostics so that it keeps diagnostics in separate pools owned by the RAII objects that keep pushing decl state. This gives us quite a bit more flexibility.
llvm-svn: 156289
|
#
2331bbfb |
| 02-May-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Revert most of r154844, which was disabled in r155975. Keep around the refactorings in that revision, and some of the subsequent bugfixes, which seem to be relevant even without delayed exception spe
Revert most of r154844, which was disabled in r155975. Keep around the refactorings in that revision, and some of the subsequent bugfixes, which seem to be relevant even without delayed exception specification parsing.
llvm-svn: 156031
show more ...
|
Revision tags: llvmorg-3.1.0-rc2, llvmorg-3.1.0-rc1 |
|
#
433e0530 |
| 16-Apr-2012 |
Douglas Gregor <dgregor@apple.com> |
Implement the last part of C++ [class.mem]p2, delaying the parsing of exception specifications on member functions until after the closing '}' for the containing class. This allows, for example, a me
Implement the last part of C++ [class.mem]p2, delaying the parsing of exception specifications on member functions until after the closing '}' for the containing class. This allows, for example, a member function to throw an instance of its own class. Fixes PR12564 and a fairly embarassing oversight in our C++98/03 support.
llvm-svn: 154844
show more ...
|
#
3024f07c |
| 16-Apr-2012 |
Douglas Gregor <dgregor@apple.com> |
Implement C++11 [expr.prim.general]p3, which permits the use of 'this' in the declaration of a non-static member function after the (optional) cv-qualifier-seq, which in practice means in the excepti
Implement C++11 [expr.prim.general]p3, which permits the use of 'this' in the declaration of a non-static member function after the (optional) cv-qualifier-seq, which in practice means in the exception specification and late-specified return type.
The new scheme here used to manage 'this' outside of a member function scope is more general than the Scope-based mechanism previously used for non-static data member initializers and late-parsesd attributes, because it can also handle the cv-qualifiers on the member function. Note, however, that a separate pass is required for static member functions to determine whether 'this' was used, because we might not know that we have a static function until after declaration matching.
Finally, this introduces name mangling for 'this' and for the implicit 'this', which is intended to match GCC's mangling. Independent verification for the new mangling test case would be appreciated.
Fixes PR10036 and PR12450.
llvm-svn: 154799
show more ...
|
#
6db0b1bf |
| 20-Mar-2012 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Fix the other place where C++98 work for initializer lists was necessary.
llvm-svn: 153129
|
#
db63af22 |
| 14-Mar-2012 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Parse brace initializers as default arguments. PR12236.
llvm-svn: 152721
|
#
bbafb8a7 |
| 11-Mar-2012 |
David Blaikie <dblaikie@gmail.com> |
Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST).
The member variable is always "LangOpts" and the member function is always "getLangOpts".
Reviewed by Chris La
Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST).
The member variable is always "LangOpts" and the member function is always "getLangOpts".
Reviewed by Chris Lattner
llvm-svn: 152536
show more ...
|
#
0cf55e99 |
| 08-Mar-2012 |
Douglas Gregor <dgregor@apple.com> |
Streamline BalancedDelimiterTracker, by eliminating the duplicate paren/brace/bracket tracking (the Consume* functions already did it), removing the use of ConsumeAnyToken(), and moving the hot paths
Streamline BalancedDelimiterTracker, by eliminating the duplicate paren/brace/bracket tracking (the Consume* functions already did it), removing the use of ConsumeAnyToken(), and moving the hot paths inline with the error paths out-of-line.
llvm-svn: 152274
show more ...
|
#
7cd4a9ba |
| 22-Feb-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Improve diagnostics a bit for bad member initializers, and fix an obscure bug involving packs. Fixes PR12049.
llvm-svn: 151130
|
#
926410d2 |
| 21-Feb-2012 |
Douglas Gregor <dgregor@apple.com> |
Implement name mangling for lambda expressions that occur within the initializers of data members (both static and non-static).
llvm-svn: 151017
|
#
7fcbd902 |
| 21-Feb-2012 |
Douglas Gregor <dgregor@apple.com> |
Implement name mangling for lambda expressions that occur within the default arguments of function parameters. This simple-sounding task is complicated greatly by two issues:
(1) Default arguments
Implement name mangling for lambda expressions that occur within the default arguments of function parameters. This simple-sounding task is complicated greatly by two issues:
(1) Default arguments aren't actually a real context, so we need to maintain extra state within lambda expressions to track when a lambda was actually in a default argument. (2) At the time that we parse a default argument, the FunctionDecl doesn't exist yet, so lambda closure types end up in the enclosing context. It's not clear that we ever want to change that, so instead we introduce the notion of the "effective" context of a declaration for the purposes of name mangling.
llvm-svn: 151011
show more ...
|
#
e434590b |
| 29-Dec-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Change the diagnostics which said 'accepted as an extension' to instead say 'is an extension'. The former is inappropriate and confusing when building with -Werror/-pedantic-errors.
llvm-svn: 147357
|
#
33786cb4 |
| 08-Dec-2011 |
Francois Pichet <pichet2000@gmail.com> |
Remove unused parameter from the LateParsedTemplatedFunction constructor.
llvm-svn: 146145
|
#
6dc4c164 |
| 18-Nov-2011 |
Francois Pichet <pichet2000@gmail.com> |
Enable delayed template parsing for friend functions declared at template class scope.
llvm-svn: 144980
|
Revision tags: llvmorg-3.0.0, llvmorg-3.0.0-rc4 |
|
#
1c704737 |
| 10-Nov-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR11148: Fix crash-on-invalid if an invalid member declaration is marked as defaulted or deleted.
llvm-svn: 144270
|
#
5d1b4e3d |
| 07-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
When we notice that a member function is defined with "= delete" or "= default", make a note of which is used when creating the initial declaration. Previously, we would wait until later to handle de
When we notice that a member function is defined with "= delete" or "= default", make a note of which is used when creating the initial declaration. Previously, we would wait until later to handle default/delete as a definition, but this is too late: when adding the declaration, we already treated the declaration as "user-provided" when in fact it was merely "user-declared".
Fixes PR10861 and PR10442, along with a bunch of FIXMEs.
llvm-svn: 144011
show more ...
|
Revision tags: llvmorg-3.0.0-rc3, llvmorg-3.0.0-rc2, llvmorg-3.0.0-rc1 |
|
#
50cefbf2 |
| 17-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
When we end up having to parse the initializer of a C++ member early in -fms-extensions mode, make sure we actually use that initializer after having handled the declaration. Fixes PR11150.
llvm-svn
When we end up having to parse the initializer of a C++ member early in -fms-extensions mode, make sure we actually use that initializer after having handled the declaration. Fixes PR11150.
llvm-svn: 142195
show more ...
|
#
5d164bc5 |
| 15-Oct-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Implement -Wc++98-compat warnings for the parser.
llvm-svn: 142056
|