[gcc(refs/vendors/ARM/heads/arm-perf-staging)] coroutines: Fix STRIP_NOPS usage.

Tamar Christina tnfchris@gcc.gnu.org
Fri Jul 17 14:46:14 GMT 2020


https://gcc.gnu.org/g:c5e4be6b3645fb2294296310a3705f8be0e75da8

commit c5e4be6b3645fb2294296310a3705f8be0e75da8
Author: Marek Polacek <polacek@redhat.com>
Date:   Mon Apr 20 13:37:35 2020 -0400

    coroutines: Fix STRIP_NOPS usage.
    
    parm = STRIP_NOPS (parm); is unnecessary and generates
    warning: operation on 'parm' may be undefined [-Wsequence-point]
    when cp/coroutines.cc is compiled with -std=c++11.
    
            * coroutines.cc (captures_temporary): Don't assign the result of
            STRIP_NOPS to the same variable.

Diff:
---
 gcc/cp/ChangeLog     | 5 +++++
 gcc/cp/coroutines.cc | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index e210eb5b80e..891ec79fcfd 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2020-04-20  Marek Polacek  <polacek@redhat.com>
+
+	* coroutines.cc (captures_temporary): Don't assign the result of
+	STRIP_NOPS to the same variable.
+
 2020-04-20  Nathan Sidwell  <nathan@acm.org>
 
 	PR 94454 - tpl-tpl-parms are not canonicalizable types
diff --git a/gcc/cp/coroutines.cc b/gcc/cp/coroutines.cc
index 0a8e7521c4f..ceb8daa4e46 100644
--- a/gcc/cp/coroutines.cc
+++ b/gcc/cp/coroutines.cc
@@ -2652,7 +2652,7 @@ captures_temporary (tree *stmt, int *do_subtree, void *d)
 	  parm = TREE_OPERAND (parm, 0);
 	  if (TREE_CODE (parm) == INDIRECT_REF)
 	    parm = TREE_OPERAND (parm, 0);
-	  parm = STRIP_NOPS (parm);
+	  STRIP_NOPS (parm);
 	}
 
       /* This isn't a temporary.  */


More information about the Gcc-cvs mailing list