Skip to content
  • Eric Fiselier's avatar
    c6eb584c
    [libc++] Fix recursive instantiation in std::array. · c6eb584c
    Eric Fiselier authored
    The use of the `&& ...` fold expression in std::array's deduction guides
    recursively builds a set of binary operator expressions of depth N where
    `N` is the number of elements in the initializer.
    
    This is problematic because arrays may be large, and instantiation
    depth is limited.
    
    This patch addresses the issue by flattening the SFINAE using
    the existing `__all` type trait.
    c6eb584c
    [libc++] Fix recursive instantiation in std::array.
    Eric Fiselier authored
    The use of the `&& ...` fold expression in std::array's deduction guides
    recursively builds a set of binary operator expressions of depth N where
    `N` is the number of elements in the initializer.
    
    This is problematic because arrays may be large, and instantiation
    depth is limited.
    
    This patch addresses the issue by flattening the SFINAE using
    the existing `__all` type trait.
Loading