gnu /
gcc /
b1102f7c478136bfe18ceaf7db9572a8a757a3d2 c++: alias and non-type template parm [PR116223]
My r14-8291 for PR112632 introduced IMPLICIT_CONV_EXPR_FORCED to express
conversions to the type of an alias template parameter. In this example,
that broke deduction of X in the call to foo, so let's teach deduction to
look through it.
PR c++/116223
PR c++/112632
gcc/cp/ChangeLog:
* pt.cc (deducible_expression): Also look through
IMPLICIT_CONV_EXPR_FORCED.
(unify): Likewise.
gcc/testsuite/ChangeLog:
* g++.dg/cpp1z/nontype-auto25.C: New test.
(cherry picked from commit 4add6cd341a779e980e41ed6fb49175fca37496e)
2 files changed