[all-commits] [llvm/llvm-project] e24ddb: [libc++] Use std::addressof in std::function::target

Louis Dionne via All-commits all-commits at lists.llvm.org
Tue Jan 4 09:31:59 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e24ddb6027b6495a81c95133cfb6812d6090cd32
      https://github.com/llvm/llvm-project/commit/e24ddb6027b6495a81c95133cfb6812d6090cd32
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2022-01-04 (Tue, 04 Jan 2022)

  Changed paths:
    M libcxx/include/__functional/function.h
    A libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/addressof.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/robust_against_adl.pass.cpp

  Log Message:
  -----------
  [libc++] Use std::addressof in std::function::target

This guards against hostile overloads of operator&. Thanks to Peter Dimov
for the report in https://github.com/boostorg/lambda/issues/24.

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




More information about the All-commits mailing list