[all-commits] [llvm/llvm-project] c0428b: [libc++] ADL-proof <iterator>. `__convert_to_integ...

Quuxplusone via All-commits all-commits at lists.llvm.org
Tue Dec 8 08:25:14 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c0428b3c0c1f3b78d39ceaf909908800fb7aabe3
      https://github.com/llvm/llvm-project/commit/c0428b3c0c1f3b78d39ceaf909908800fb7aabe3
  Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
  Date:   2020-12-08 (Tue, 08 Dec 2020)

  Changed paths:
    M libcxx/include/algorithm
    M libcxx/include/iterator
    A libcxx/test/std/iterators/iterator.primitives/iterator.operations/robust_against_adl.pass.cpp

  Log Message:
  -----------
  [libc++] ADL-proof <iterator>. `__convert_to_integral` is not a customization point.

The interesting change here is that we no longer consider `__convert_to_integral`
an ADL customization point for the user's types. I think the new behavior
is defensible. The old behavior had come from D7449, where Marshall explicitly
said "people can't define their own [`__convert_to_integral` overloads]."

Differential Revision: https://reviews.llvm.org/D92814




More information about the All-commits mailing list