[all-commits] [llvm/llvm-project] 0106ae: [libc++] Use _Lazy in tuple constructors

Louis Dionne via All-commits all-commits at lists.llvm.org
Tue Sep 26 06:24:23 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0106ae3cce01b88a87acfa9cae823ed4990b907e
      https://github.com/llvm/llvm-project/commit/0106ae3cce01b88a87acfa9cae823ed4990b907e
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2023-09-26 (Tue, 26 Sep 2023)

  Changed paths:
    M libcxx/include/tuple
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/recursion_depth.pass.cpp

  Log Message:
  -----------
  [libc++] Use _Lazy in tuple constructors

This reduces the number of instantiations and also avoid blowing up
past the fold-expression limit of Clang.

This is NOT a general statement that we should strive to stay within
Clang's (sometimes way too small) limits, however in this case the
change will reduce the number of template instantiations while at the
same time doing that, which is good.

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




More information about the All-commits mailing list