forked from OSchip/llvm-project
![]() and function templates that contain variadic templates. This involves three small-ish changes: (1) When transforming a pack expansion, if the transformed argument still contains unexpanded parameter packs, build a pack expansion. This can happen during the substitution that occurs into class template partial specialiation template arguments during partial ordering. (2) When performing template argument deduction where the argument is a pack expansion, match against the pattern of that pack expansion. (3) When performing template argument deduction against a non-pack parameter, or a non-expansion template argument, deduction fails if the argument itself is a pack expansion (C++0x [temp.deduct.type]p22). llvm-svn: 123279 |
||
---|---|---|
.. | ||
basic | ||
class | ||
class.access | ||
class.derived | ||
conv | ||
dcl.dcl | ||
dcl.decl | ||
except | ||
expr | ||
lex | ||
over | ||
special | ||
stmt.stmt | ||
temp |