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

Reply via email to