diff mbox series

[v1] RISC-V: Fix one range-loop-construct warning of avlprop

Message ID 20231028145150.1117903-1-pan2.li@intel.com
State New
Headers show
Series [v1] RISC-V: Fix one range-loop-construct warning of avlprop | expand

Commit Message

Li, Pan2 Oct. 28, 2023, 2:51 p.m. UTC
From: Pan Li <pan2.li@intel.com>

This patch would like to fix one warning of avlprop as below.

../../gcc/config/riscv/riscv-avlprop.cc: In member function 'virtual
unsigned int pass_avlprop::execute(function*)':
../../gcc/config/riscv/riscv-avlprop.cc:346:23: error: loop variable
'candidate' creates a copy from type 'const std::pair<avlprop_type,
rtl_ssa::insn_info*>' [-Werror=range-loop-construct]
  346 |       for (const auto candidate : m_candidates)
      |                       ^~~~~~~~~
../../gcc/config/riscv/riscv-avlprop.cc:346:23: note: use reference type
to prevent copying
  346 |       for (const auto candidate : m_candidates)
      |                       ^~~~~~~~~
      |                       &

gcc/ChangeLog:

	* config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Use
	reference type to prevent copying.

Signed-off-by: Pan Li <pan2.li@intel.com>
---
 gcc/config/riscv/riscv-avlprop.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jeff Law Oct. 28, 2023, 3 p.m. UTC | #1
On 10/28/23 08:51, pan2.li@intel.com wrote:
> From: Pan Li <pan2.li@intel.com>
> 
> This patch would like to fix one warning of avlprop as below.
> 
> ../../gcc/config/riscv/riscv-avlprop.cc: In member function 'virtual
> unsigned int pass_avlprop::execute(function*)':
> ../../gcc/config/riscv/riscv-avlprop.cc:346:23: error: loop variable
> 'candidate' creates a copy from type 'const std::pair<avlprop_type,
> rtl_ssa::insn_info*>' [-Werror=range-loop-construct]
>    346 |       for (const auto candidate : m_candidates)
>        |                       ^~~~~~~~~
> ../../gcc/config/riscv/riscv-avlprop.cc:346:23: note: use reference type
> to prevent copying
>    346 |       for (const auto candidate : m_candidates)
>        |                       ^~~~~~~~~
>        |                       &
> 
> gcc/ChangeLog:
> 
> 	* config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Use
> 	reference type to prevent copying.
OK
jeff
>
Li, Pan2 Oct. 29, 2023, 12:41 a.m. UTC | #2
Committed, thanks Jeff.

Pan

-----Original Message-----
From: Jeff Law <jeffreyalaw@gmail.com> 
Sent: Saturday, October 28, 2023 11:00 PM
To: Li, Pan2 <pan2.li@intel.com>; gcc-patches@gcc.gnu.org
Cc: juzhe.zhong@rivai.ai; Wang, Yanzhang <yanzhang.wang@intel.com>; kito.cheng@gmail.com
Subject: Re: [PATCH v1] RISC-V: Fix one range-loop-construct warning of avlprop



On 10/28/23 08:51, pan2.li@intel.com wrote:
> From: Pan Li <pan2.li@intel.com>
> 
> This patch would like to fix one warning of avlprop as below.
> 
> ../../gcc/config/riscv/riscv-avlprop.cc: In member function 'virtual
> unsigned int pass_avlprop::execute(function*)':
> ../../gcc/config/riscv/riscv-avlprop.cc:346:23: error: loop variable
> 'candidate' creates a copy from type 'const std::pair<avlprop_type,
> rtl_ssa::insn_info*>' [-Werror=range-loop-construct]
>    346 |       for (const auto candidate : m_candidates)
>        |                       ^~~~~~~~~
> ../../gcc/config/riscv/riscv-avlprop.cc:346:23: note: use reference type
> to prevent copying
>    346 |       for (const auto candidate : m_candidates)
>        |                       ^~~~~~~~~
>        |                       &
> 
> gcc/ChangeLog:
> 
> 	* config/riscv/riscv-avlprop.cc (pass_avlprop::execute): Use
> 	reference type to prevent copying.
OK
jeff
>
diff mbox series

Patch

diff --git a/gcc/config/riscv/riscv-avlprop.cc b/gcc/config/riscv/riscv-avlprop.cc
index 2c79ec81806..c59eb7f6fa3 100644
--- a/gcc/config/riscv/riscv-avlprop.cc
+++ b/gcc/config/riscv/riscv-avlprop.cc
@@ -343,7 +343,7 @@  pass_avlprop::execute (function *fn)
     {
       fprintf (dump_file, "\nNumber of potential AVL propagations: %d\n",
 	       m_candidates.length ());
-      for (const auto candidate : m_candidates)
+      for (const auto &candidate : m_candidates)
 	{
 	  fprintf (dump_file, "\nAVL propagation type: %s\n",
 		   avlprop_type_to_str (candidate.first));