a4de17562d13d7a8188108243c4cfbd52f33229a |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master clang for rebase to r256229 http://b/26987366 (cherry picked from commit 87d948ecccffea9e9e37d0d053b246e2d6d6c47b) Change-Id: I10ca401a280e905253aafabad9118693a2f24ffb
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
73ed67cc36b06a380ddc3658beb7a84328c19ff6 |
|
26-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR14428: When instantiating a 'new' expression, if we had a non-dependent initialization, don't rebuild it. Remove a couple of hacks which were trying to work around this. Fix the special case for one-argument CXXConstructExprs to not apply if the one argument is a default argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168582 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
63b6ebe4e732f20fa24ea0666ed438dd5004cc20 |
|
23-Nov-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Sema: Provide a valid source location when instantiating templates based on a CXXDefaultArgExpr. Fixes PR13758. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168521 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
9b94cd1b2527c8dc9ec19a8608f2313010e721b5 |
|
27-Apr-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Add a missing ExpressionEvaluationContext for template default arguments. Fixes PR12581. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
b2b5cc0cf908d516a107d373db963f692449a8a8 |
|
04-Jan-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Enhance the diagnostic for negative array sizes to include the declaration name of the array when present. This ensures that a poor-man's C++03 static_assert will include the user error message often embedded in the name. Update all the tests to reflect the new wording, and add a test for the name behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
102ff97bc55ba9f925a100671d49e49b3c5f7129 |
|
19-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
When marking declarations referenced within an expression (e.g., within a default argument), recurse into default arguments. Fixes PR8401, a regression I introduced in r113700 while refactoring our handling of "used" declarations in default arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
5833b0b831d6afae2885e6af420e2bda639652e6 |
|
15-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
When marking the declarations in a default argument expression as "used", at the time that the default argument itself is used, also mark destructors that will be called by this expression. This fixes a regression that I introduced in r113700, which broke WebKit, and fixes <rdar://problem/8427926>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
4fcf5b2f816347ba7a3f16557d5e2b293634d4d6 |
|
12-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
Teach the EvaluatedExprVisitor and its client, which marks declarations in potentially-evaluated subexpressions, about recursion. Fixes the release-mode self-host failure I introduced in r113700. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113708 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
be0f7bd61c7b2879d02ae75aad7a91d92f819d94 |
|
11-Sep-2010 |
Douglas Gregor <dgregor@apple.com> |
When parsing default function arguments, do not mark any declarations used in the default function argument as "used". Instead, when we actually use the default argument, make another pass over the expression to mark any used declarations as "used" at that point. This addresses two kinds of related problems: 1) We were marking some declarations "used" that shouldn't be, because we were marking them too eagerly. 2) We were failing to mark some declarations as "used" when we should, if the first time it was instantiated happened to be an unevaluated context, we wouldn't mark them again at a later point. I've also added a potentially-handy visitor class template EvaluatedExprVisitor, which only visits the potentially-evaluated subexpressions of an expression. I bet this would have been useful for noexcept... Fixes PR5810 and PR8127. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
087fb7d0b5e08f34b2e28a09c376f66449f30886 |
|
26-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Ensure that we have completed a type before attempting initialization on that type. Fixes several problems in Boost.Interprocess. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
a41a8c5972c2632247ae7913cf6ce65d45f7e702 |
|
22-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Whenever we complain about a failed initialization of a function or method parameter, provide a note pointing at the parameter itself so the user does not have to manually look for the function/method being called and match up parameters to arguments. For example, we now get: t.c:4:5: warning: incompatible pointer types passing 'long *' to parameter of type 'int *' [-pedantic] f(long_ptr); ^~~~~~~~ t.c:1:13: note: passing argument to parameter 'x' here void f(int *x); ^ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
7c2342dd4c9947806842e5aca3d2bb2e542853c9 |
|
10-Mar-2010 |
John McCall <rjmccall@apple.com> |
When pretty-printing tag types, only print the tag if we're in C (and therefore not creating ElaboratedTypes, which are still pretty-printed with the written tag). Most of these testcase changes were done by script, so don't feel too sorry for my fingers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
525f96c0ef39f91abd26b1b4584ba1814e7ebc28 |
|
05-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
Default function arguments for function template specializations always come from the primary template, so gather the instantiation template arguments from the primary template. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
220ccbf2c9ef97034cce80561f9f46c4f1f63bc7 |
|
13-Jan-2010 |
John McCall <rjmccall@apple.com> |
Improve the reporting of non-viable overload candidates by noting the reason why the candidate is non-viable. There's a lot we can do to improve this, but it's a good start. Further improvements should probably be integrated with the bad-initialization reporting routines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
b1622a1fd7b7f4ab8d00d0183d17c90ad25c14e3 |
|
06-Jan-2010 |
John McCall <rjmccall@apple.com> |
Improve the diagnostics used to report implicitly-generated class members as parts of overload sets. Also, refer to constructors as 'constructors' rather than functions. Adjust a lot of tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92832 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
036aed18662e0193aafe0e8ae13d2e57efe6df25 |
|
24-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
When we see a CXXDefaultArgExpr during template instantiation, rebuild the default argument so that we're sure to mark any referenced declarations. This gets us another little step closer to fixing PR5810. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
65222e82d97af2120b3952d19cbd3cd923f4b43e |
|
23-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
When using a default function argument for a function template (or member function thereof), perform the template instantiation each time the default argument is needed. This ensures that (1) We get different CXXTemporary objects for each instantiation, and (2) Any other instantiations or definitions triggered by the instantiation of the default argument expression are guaranteed to happen; previously, they might have been suppressed, e.g., because they happened in an unevaluated context. This fixes the majority of PR5810. However, it does not address the problem where we may have multiple uses of the same CXXTemporary within an expression when the temporary came from a non-instantiated default argument expression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
4a2c19bf2330e31851330423187ec48035cab1a5 |
|
22-Dec-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Switch default arguments over to InitializationSequence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
7abfbdbc97ad8e7f340789f751df1e32b10118b4 |
|
19-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Switch more of Sema::CheckInitializerTypes over to InitializationSequence. Specially, switch initialization of a C++ class type (either copy- or direct-initialization). Also, make sure that we create an elidable copy-construction when performing copy initialization of a C++ class variable. Fixes PR5826. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
a5728872c7702ddd09537c95bc3cbd20e1f2fb09 |
|
15-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
d47c47d65e339ab1f28e9f9365159cf1047ac1df |
|
09-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Make sure that we instantiate default function arguments for an overloaded operator(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86581 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
a29e51bb9874bb9ce442efa271e87da237e4ce2c |
|
08-Nov-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Special-case default argument expression in instantiation. This should fix PR4301. Doug, please double-check my assumptions. Read the PR for more details. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
0ebb6d391d2e29ed48a880517e2ba919bf7016d9 |
|
29-Oct-2009 |
Anders Carlsson <andersca@mac.com> |
Make sure to call CompleteConstructorCall for bases and members that are initialized implicitly in constructors so that default arguments etc are set correctly. Fixes PR5283. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85510 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
d85cef5a54074a5f647f45c2218675f7774a909d |
|
17-Sep-2009 |
Douglas Gregor <dgregor@apple.com> |
Merge uninstantiated default arguments more carefully, and try not to complain about specializations of member functions that are not definitions. Fixes PR4995. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82159 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
e95b40961302c2130968ddfc3ba162e138f2118e |
|
16-Sep-2009 |
Douglas Gregor <dgregor@apple.com> |
Teach Sema::FindInstantiatedDecl to find instantiated RecordDecls even when we are not instantiating the corresponding "current instantiation." This happens, e.g., when we are instantiating a declaration reference that refers into the "current instantiation" but occurs in a default function argument. The libstdc++ vector default constructor now instantiates properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82069 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
6cc1518b9f15ca846b8c35518eeae9557935678d |
|
11-Sep-2009 |
Douglas Gregor <dgregor@apple.com> |
Cleanup and test C++ default arguments. Improvements include: - Diagnose attempts to add default arguments to templates (or member functions of templates) after the initial declaration (DR217). - Improve diagnostics when a default argument is redefined. Now, the note will always point at the place where the default argument was previously defined, rather than pointing to the most recent declaration of the function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81548 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
21e1c4ea0a96bcecfe5976304d84779949058648 |
|
06-Sep-2009 |
Anders Carlsson <andersca@mac.com> |
Reapply 81096, now with a fix. Spot the bug: for (unsigned i = numargs; i < NumArgs; ++i) Args[0] = 0; ;) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81123 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
4355be0758856cf7645e264d4813831dc27ce78c |
|
06-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Revert "Initialize default CXXConstructExpr arguments to 0. Fixes a crash when destroying the CXXConstructExpr.", this is causing test failures across the board. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81100 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
657bff7ff399d08812a3b3324dbbebf68b0df07d |
|
06-Sep-2009 |
Anders Carlsson <andersca@mac.com> |
Initialize default CXXConstructExpr arguments to 0. Fixes a crash when destroying the CXXConstructExpr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
6bc107b49862418bf3f64f74f17e472b4c13aa71 |
|
05-Sep-2009 |
Anders Carlsson <andersca@mac.com> |
Report errors for member functions correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
25cae7f4b1155b1a6ca959ea5143ea39eae656cd |
|
05-Sep-2009 |
Anders Carlsson <andersca@mac.com> |
Use a separate diagnostic for default function argument expressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
0b84a53412a6acac38e2d647d220ce7af851395e |
|
25-Aug-2009 |
Douglas Gregor <dgregor@apple.com> |
Add a little more testing for default arguments of constructors in a class template git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
5653ca5088b799ada71b5043a0a2cd71c727da83 |
|
25-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
If a parameter has a default argument expression, make sure to instantiate the parameter type before checking that the expression is a valid initializer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
8644aecd4383ce829d1eed81e96399904a948362 |
|
25-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
Improved support for default arguments in constructors for class templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|
9351c173cd538f7f7c28af1494ac7e68b815b0e8 |
|
25-Aug-2009 |
Anders Carlsson <andersca@mac.com> |
Basic support for default argument expressions for function templates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79972 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/default-expr-arguments.cpp
|