On Sun, May 12, 2024 at 11:48:07PM -0700, Ken Matsui wrote: > This patch fixes a compilation error when building GCC using Clang. > Since __array_rank is used as a built-in trait name, use rank instead.
I think you can go ahead and push this patch as obvious, thanks. > PR c++/115061 > > gcc/cp/ChangeLog: > > * semantics.cc (finish_trait_expr): Use rank instead of > __array_rank. > > Signed-off-by: Ken Matsui <kmat...@gcc.gnu.org> > --- > gcc/cp/semantics.cc | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/gcc/cp/semantics.cc b/gcc/cp/semantics.cc > index 43b175f92fd..df62e2d80db 100644 > --- a/gcc/cp/semantics.cc > +++ b/gcc/cp/semantics.cc > @@ -12914,10 +12914,10 @@ finish_trait_expr (location_t loc, cp_trait_kind > kind, tree type1, tree type2) > tree val; > if (kind == CPTK_RANK) > { > - size_t __array_rank = 0; > + size_t rank = 0; > for (; TREE_CODE (type1) == ARRAY_TYPE; type1 = TREE_TYPE (type1)) > - ++__array_rank; > - val = build_int_cst (size_type_node, __array_rank); > + ++rank; > + val = build_int_cst (size_type_node, rank); > } > else > val = (trait_expr_value (kind, type1, type2) > -- > 2.44.0 > Marek