| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
template<> struct foo<int> { ... };
where "foo" does not refer to a template. Fixes PR3844.
llvm-svn: 85616
|
|
|
|
|
|
|
| |
explicit-instantiation-declaration-after-explicit-instantiation-definition
errors. This wraps up explicit template instantiation for now.
llvm-svn: 85347
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inlined functions. For example, given
template<typename T>
class string {
unsigned Len;
public:
unsigned size() const { return Len; }
};
extern template class string<char>;
we now give the instantiation of string<char>::size
available_externally linkage (if it is ever instantiated!), as
permitted by the C++0x standard.
llvm-svn: 85340
|
|
|
|
|
|
|
| |
function template specializations and member functions of class
template specializations.
llvm-svn: 85300
|
|
|
|
|
|
|
|
|
| |
members that have a definition. Also, use
CheckSpecializationInstantiationRedecl as part of this instantiation
to make sure that we diagnose the various kinds of problems that can
occur with explicit instantiations.
llvm-svn: 85270
|
|
|
|
| |
llvm-svn: 85244
|
|
|
|
| |
llvm-svn: 85243
|
|
|
|
|
|
|
|
|
|
| |
instantiation once we have committed to performing the
instantiation. As part of this, make our makeshift
template-instantiation location information suck slightly less.
Fixes PR5264.
llvm-svn: 85209
|
|
|
|
|
|
|
|
| |
specializations. Work in progress; there's more cleanup required to
actually use the new CheckSpecializationInstantiationRedecl checker
uniformly.
llvm-svn: 84185
|
|
|
|
|
|
|
|
| |
functions/static data members of class template specializations that
do not have definitions. This is the latter part of [temp.explicit]p4;
the former part still needs more testing.
llvm-svn: 84182
|
|
|
|
|
|
|
|
| |
cases where an explicit instantiation requires a definition; the
remainder of these checks will come with the implementation of
paragraph 4 of [temp.explicit].
llvm-svn: 84181
|
|
|
|
|
|
|
| |
focusing on the scope- and qualifier-related semantic requirements in
C++ [temp.explicit]p2.
llvm-svn: 84154
|
|
|
|
|
|
| |
template that has no out-of-line definition.
llvm-svn: 84141
|
|
|
|
|
|
|
|
| |
class templates the proper linkage.
Daniel, please look over the CodeGenModule bits.
llvm-svn: 84140
|
|
llvm-svn: 84129
|