713c287caf70922f93cfd9292540bad274c4a82f |
|
23-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
When rebuilding a DependentScopeDeclRefExpr, perform a lookup into the scope even if it's dependent, in case it now names a member of the current instantiation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166496 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|
2060650f2743650a815ce3daa414352911d408fd |
|
14-Oct-2011 |
Douglas Gregor <dgregor@apple.com> |
When declaring an out-of-line template, attempt to rebuild any types within the template parameter list that may have changed now that we know the current instantiation. Fixes <rdar://problem/10194295>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141954 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|
d9ea180032eda76a46c099a9aab99512447c326d |
|
19-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
The member classes of a current instantiation aren't necessarily a current instantiation, even though we have a RecordDecl describing them. Fixes PR9255. Amusingly, I've had this patch sitting around for a month or two because it was "obviously" wrong, but hadn't gotten around to writing a test case to submit the fix :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|
6813d7ba5fa79e36bdb3986e7f3f8100915a61ab |
|
28-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Enable expression transformations in the current-instantiation rebuilder, i.e., remove a silly short-sighted hack from long ago. Thanks to Abramo Bagnara for the test case/bug report! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109583 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|
85bcd9920582f4d3879d8fbbaf4ca4fe09690160 |
|
11-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Static data members intialized in-class that have constant values are value-dependent if their initializers are value-dependent; my recent tweak to these dependent rules overstepped by taking away this value-dependents. Fixes a Boost.GIL regression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103476 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.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/current-instantiation.cpp
|
ac564f3e8d79c44fefa5da5ab1b58484ae781051 |
|
23-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Improve type-checking of templates by distinguishing between members of the current instantiation and members of an unknown specialization when type-checking a qualified-if expression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89653 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|
c5b8c9b6607de7ce25a28f26a34f43efa5728cb7 |
|
30-Jul-2009 |
Douglas Gregor <dgregor@apple.com> |
What luck! Clang obtains support for refering to members of the current instantiation when that current instantiation is a class template partial specialization. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77609 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|
42af25f865a82022a04bedeb483ac251c4412e29 |
|
11-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement the notions of the "current instantiation" and "unknown specialization" within a C++ template, and permit name lookup into the current instantiation. For example, given: template<typename T, typename U> struct X { typedef T type; X* x1; // current instantiation X<T, U> *x2; // current instantiation X<U, T> *x3; // not current instantiation ::X<type, U> *x4; // current instantiation X<typename X<type, U>::type, U>: *x5; // current instantiation }; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71471 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/SemaTemplate/current-instantiation.cpp
|