[all-commits] [llvm/llvm-project] e442f3: [libc++] Fix unintended ADL inside ref(reference_w...

kepler-5 via All-commits all-commits at lists.llvm.org
Thu Feb 20 09:22:53 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e442f38395f71b680bc1174568e461b5ff1f7ebf
      https://github.com/llvm/llvm-project/commit/e442f38395f71b680bc1174568e461b5ff1f7ebf
  Author: Logan Smith <logan.r.smith0 at gmail.com>
  Date:   2020-02-20 (Thu, 20 Feb 2020)

  Changed paths:
    M libcxx/include/__functional_base
    M libcxx/test/std/utilities/function.objects/refwrap/refwrap.helpers/cref_2.pass.cpp
    M libcxx/test/std/utilities/function.objects/refwrap/refwrap.helpers/ref_2.pass.cpp

  Log Message:
  -----------
  [libc++] Fix unintended ADL inside ref(reference_wrapper<T>) and cref(reference_wrapper<T>)

This patch qualifies calls to ref and cref inside ref(reference_wrapper<T>)
and cref(reference_wrapper<T>), respectively. These previously unqualified
calls could break in the presence of user functions called ref/cref inside
associated namespaces: https://gcc.godbolt.org/z/8VfprT

Fixes PR44398.

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




More information about the All-commits mailing list