[all-commits] [llvm/llvm-project] 9d2303: [libc++] Only make comparators transparent in __tr...

Nikolas Klauser via All-commits all-commits at lists.llvm.org
Tue Feb 10 04:27:18 PST 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9d2303103288f6110622644f78dbd26c8bcf28d5
      https://github.com/llvm/llvm-project/commit/9d2303103288f6110622644f78dbd26c8bcf28d5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-02-10 (Tue, 10 Feb 2026)

  Changed paths:
    M libcxx/include/__functional/operations.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/make_transparent.h
    M libcxx/include/map
    M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp

  Log Message:
  -----------
  [libc++] Only make comparators transparent in __tree if they don't cause a conversion (#179453)

We're currently unwrapping `less<T>` even if the `key_type` isn't `T`.
This causes the removal of an implicit conversion to `const T&` if the
types mismatch. Making `less<T>` transparent in that case changes
overload resolution and makes it fail potentially.

Fixes #179319



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list