[libcxx-commits] [PATCH] D111283: [clang] template / auto deduction deduces common sugar

Matheus Izvekov via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Mon Sep 12 01:48:28 PDT 2022


mizvekov added a comment.

In D111283#3783250 <https://reviews.llvm.org/D111283#3783250>, @ychen wrote:

> Hi @mizvekov , I noticed that deduction for partial ordering also inherits this new behavior. Do you think partial ordering could opt out of this, or is it better for partial ordering to deal with the new sugared types?

I would expect partial ordering to be performed only using canonical types, that type sugar should make no difference there.

Note that previous to this patch, we would already produce sugar on deduction, but the behavior with regards to deducing the same template parameter from multiple places was pretty badly behaved: We would just keep the sugar from the first deduction, and ignore any subsequent ones. That meant that the deduction order had an effect on the result. With this patch, deduction becomes order agnostic.

What kind of difference are you seeing?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111283/new/

https://reviews.llvm.org/D111283



More information about the libcxx-commits mailing list