Commit Graph

1 Commits

Author SHA1 Message Date
Richard Smith 9cc56bc373 When substituting previously-checked template arguments into a template
template parameter that is an expanded parameter pack, only substitute into the
current slice, not the entire pack.

This reduces the checking of N template template arguments for an expanded
parameter pack containing N parameters from quadratic time to linear time in
the length of the pack. This is important because one (and possibly the only?)
general technique for splitting a template parameter pack in linear time
depends on doing this.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@326973 91177308-0d34-0410-b5e6-96231b3b80d8
2018-03-08 01:07:33 +00:00