tree-ssa-propagate.c (set_rhs): Copy EXPR_LOCATION if needed.
authorJakub Jelinek <jakub@redhat.com>
Fri, 22 Sep 2006 08:32:45 +0000 (10:32 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 22 Sep 2006 08:32:45 +0000 (10:32 +0200)
* tree-ssa-propagate.c (set_rhs): Copy EXPR_LOCATION if
needed.

From-SVN: r117134

gcc/ChangeLog
gcc/tree-ssa-propagate.c

index f81896b2c305a90de4b44caea61b40b6e60bcfb3..11c8865ee1886ac13db3be80cc44381c57e0c633 100644 (file)
@@ -1,3 +1,8 @@
+2006-09-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * tree-ssa-propagate.c (set_rhs): Copy EXPR_LOCATION if
+       needed.
+
 2006-09-21  Richard Sandiford  <richard@codesourcery.com>
 
        * varasm.c (copy_constant): Fix reversed gcc_assert check.
index 111b39d3ab38ad94c787cb040d540eef1c7a5b21..f9ece62a9a877f32a05647eef90e25d640aa2142 100644 (file)
@@ -592,6 +592,13 @@ set_rhs (tree *stmt_p, tree expr)
           || code == MODIFY_EXPR)
     return false;
 
+  if (EXPR_HAS_LOCATION (stmt)
+      && EXPR_P (expr)
+      && ! EXPR_HAS_LOCATION (expr)
+      && TREE_SIDE_EFFECTS (expr)
+      && TREE_CODE (expr) != LABEL_EXPR)
+    SET_EXPR_LOCATION (expr, EXPR_LOCATION (stmt));
+
   switch (TREE_CODE (stmt))
     {
     case RETURN_EXPR: