aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1993-10-03 16:45:14 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1993-10-03 16:45:14 -0400
commitd3328f5500cdf3334c05a54cb7b9f447b32b80d8 (patch)
treee983edd844250d40c506de721766a929118a9b51
parent881430620003209aa70da850787de3e25e97dc36 (diff)
downloadgcc-d3328f5500cdf3334c05a54cb7b9f447b32b80d8.zip
gcc-d3328f5500cdf3334c05a54cb7b9f447b32b80d8.tar.gz
gcc-d3328f5500cdf3334c05a54cb7b9f447b32b80d8.tar.bz2
(output_constant_def): Copy string as well as string node when
deferring output of constants. From-SVN: r5568
-rw-r--r--gcc/varasm.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c
index e39f546..fa41470 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -2481,6 +2481,9 @@ output_constant_def (exp)
push_obstacks_nochange ();
suspend_momentary ();
p->exp = copy_node (exp);
+ TREE_STRING_POINTER (p->exp)
+ = obstack_copy0 (current_obstack, TREE_STRING_POINTER (p->exp),
+ TREE_STRING_LENGTH (p->exp));
pop_obstacks ();
p->reloc = reloc;
p->labelno = const_labelno++;