[all-commits] [llvm/llvm-project] 4d323e: [libc++] Allow the use of extensions in the implem...

Nikolas Klauser via All-commits all-commits at lists.llvm.org
Fri Mar 8 16:09:50 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4d323e404d43526ad8263769f00aace9db2e57c5
      https://github.com/llvm/llvm-project/commit/4d323e404d43526ad8263769f00aace9db2e57c5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/tuple

  Log Message:
  -----------
  [libc++] Allow the use of extensions in the implementation (#79532)

We've talked about allowing extensions on
[discourse](https://discourse.llvm.org/t/rfc-use-language-extensions-from-future-standards-in-libc/71898/5)
and in a libc++ monthly meeting and agreed to test it out in the LLVM 18
release. We've done that with the `tuple` constructor overload set
(using conditional `explicit`). Since we haven't heard about any
breakages, it seems safe to do. This patch enables the use of extension
from later C++ standards inside the versioned `std` namespaces. This
should be good enough, since almost all of our code is inside that
namespace. This approach also avoids the use of extensions inside the
test `std` suite. That part of the code base should stay clean, since
it's a test suite that is also used by other vendors to test their
implementations.



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