[PATCH] remove redundant HAS_ROWS check from caller side of a68_low_dup

Jose E. Marchesi jemarch@gnu.org
Thu Jun 18 15:20:10 GMT 2026


Hello Kanishka!

> Hi,
>
> Resending the patch with the requested ChangeLog entry and DCO sign-off.
>
> Thanks,
> Kanishka Solanki
> From f18a36dbee0f6f6b4366f869a1a1d0d1327ffaed Mon Sep 17 00:00:00 2001
> From: Kanishka Solanki <kanishkasolanki456s@gmail.com>
> Date: Mon, 15 Jun 2026 20:54:06 +0530
> Subject: [PATCH] remove redundant HAS_ROWS check from caller side of
>  a68_low_dup

You need to add a little description of what the patch does, here.  In
this case, for when someone looks at the patch in the future.  In this
case, I think it would be good to explain why checking for HAS_ROWS is
no longer necessary, which is because a68_low_dup is now doing that
checking  itself.

Other than that, it looks great :)

Please add the little description and send the patch to
gcc-patches@gcc.gnu.org Ccing algol68@gcc.gnu.org.

> gcc/algol68/ChangeLog
>
> 	* a68-low-clauses.cc (a68_lower_collateral_clause): Do not check
> 	for rows before calling a68_low_dup.
> 	* a68-low-units.cc (collect_call_arguments): Likewise.
>
> Signed-off-by: Kanishka Solanki <kanishkasolanki456s@gmail.com>
> ---
>  gcc/algol68/a68-low-clauses.cc | 1 -
>  gcc/algol68/a68-low-units.cc   | 1 -
>  2 files changed, 2 deletions(-)
>
> diff --git a/gcc/algol68/a68-low-clauses.cc b/gcc/algol68/a68-low-clauses.cc
> index 9fca4b872bc..f59dbcbb318 100644
> --- a/gcc/algol68/a68-low-clauses.cc
> +++ b/gcc/algol68/a68-low-clauses.cc
> @@ -1132,7 +1132,6 @@ a68_lower_collateral_clause (NODE_T *p ATTRIBUTE_UNUSED,
>  	  for (tree_stmt_iterator si = tsi_start (units); !tsi_end_p (si); tsi_next (&si))
>  	    {
>  	      tree unit = tsi_stmt (si);
> -	      if (A68_TYPE_HAS_ROWS_P (TREE_TYPE (unit)))
>  		unit = a68_low_dup (unit);
>  	      CONSTRUCTOR_APPEND_ELT (ve, size_int (num_units), unit);
>  	      num_units += 1;
> diff --git a/gcc/algol68/a68-low-units.cc b/gcc/algol68/a68-low-units.cc
> index f7bfe6f822f..054f7fb3d74 100644
> --- a/gcc/algol68/a68-low-units.cc
> +++ b/gcc/algol68/a68-low-units.cc
> @@ -1133,7 +1133,6 @@ collect_call_arguments (NODE_T *p, vec<tree, va_gc> *args, LOW_CTX_T ctx)
>  	  /* In Algol 68 parameters are passed via an identity declaration, so
>  	     this must implement same semantics.  */
>  	  tree arg = a68_lower_tree (p, ctx);
> -	  if (HAS_ROWS (MOID (p)))
>  	    arg = a68_low_dup (arg);
>  	  arg = a68_consolidate_ref (MOID (p), arg);
>  	  args->quick_push (arg);


More information about the Algol68 mailing list