For PR java/6520:
authorTom Tromey <tromey@redhat.com>
Tue, 11 Jun 2002 22:36:53 +0000 (22:36 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Tue, 11 Jun 2002 22:36:53 +0000 (22:36 +0000)
* fold-const.c (fold_convert): Don't modify existing tree's type.

From-SVN: r54529

gcc/ChangeLog
gcc/fold-const.c

index bfa8e954ee87283da7ecb06b1f402d80eb99af27..8288483e5c420f72be5c95fa50f06065d970b5ba 100644 (file)
@@ -1,3 +1,8 @@
+2002-06-11  Tom Tromey  <tromey@redhat.com>
+
+       For PR java/6520:
+       * fold-const.c (fold_convert): Don't modify existing tree's type.
+
 2002-06-11  Geoffrey Keating  <geoffk@redhat.com>
 
        * config/rs6000/ppc-asm.h: Remove some Windows NT leftovers.
index db415649f0f3a562bed066649220d150f0ed961f..1c29ad57fbf7d44b3fd8f3fec7a04d13f59d10e1 100644 (file)
@@ -1596,8 +1596,10 @@ fold_convert (t, arg1)
        {
          if (REAL_VALUE_ISNAN (TREE_REAL_CST (arg1)))
            {
-             t = arg1;
-             TREE_TYPE (arg1) = type;
+             /* We make a copy of ARG1 so that we don't modify an
+                existing constant tree.  */
+             t = copy_node (arg1);
+             TREE_TYPE (t) = type;
              return t;
            }