When performing a substitution into a dependent alias template, mark the
authorRichard Smith <richard@metafoo.co.uk>
Wed, 17 Jun 2020 21:49:03 +0000 (14:49 -0700)
committerRichard Smith <richard@metafoo.co.uk>
Wed, 17 Jun 2020 22:12:04 +0000 (15:12 -0700)
commitc851d6cf4a4ab803d01d0059f4659f4f9f4435ea
treeb1d24330adf1277e4bf1d443302522aa38cb45fb
parentc7fbe2191b8b9cd64570ed3906d1bed1dd5fff8e
When performing a substitution into a dependent alias template, mark the
outer levels as retained rather than omitting their arguments.

This better reflects what's going on (we're performing a substitution
while still inside a template). In theory this is also more correct, but
I've not found a testcase where it matters in practice (largely because
we don't allow alias templates to be declared inside a function).
clang/lib/Sema/SemaTemplate.cpp