royjacobson added a comment. In D128750#3661576 <https://reviews.llvm.org/D128750#3661576>, @ychen wrote:
> ... > There is *no* way to reorder the template parameters list again (to get two > or more reordering) and the resulted template still works, because of the > *positionally correspond* requirement. If this reasoning is sound, I think > the current approach of deducing order to compare constraints for rewritten > candidates is correct. I wouldn't say I'm 100% confident. But it still makes > sense to me at this moment. I'm not sure I follow your reasoning here. I agree we can't reorder the function parameters, but in your example with T/U/V we have 3 template parameters that we could reorder in 6 different ways. According to how I read 6.2.1.2 we'd need to check there's only one way to order them equivalently, which (I think) reduces to every template parameter appears only once. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D128750/new/ https://reviews.llvm.org/D128750 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits