[libc++] <type_traits>: Avoid instantiating a pointer type.
GCC expands the pointer type in this conditional expression even for
template types _Up that are not arrays. This raises an error when
std::decay<> is used with reference types (as is done in LLVM's
sources). Using add_pointer<> causes GCC to only instantiate a
pointer type for array types.
Reviewed By: #libc, philnik, ldionne
Differential Revision: https://reviews.llvm.org/D135469
GitOrigin-RevId: 26068c6e60324ed866a1ca2afb5cb5eb0aaf015b
2 files changed