aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2011-06-06 19:46:00 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2011-06-06 19:46:00 +0200
commit99a5e049bad4d20dc10a9934cac65102b6b82977 (patch)
treea9b3d907dbb7b87f41da1781de10e3a0f673d839
parent04902d4cb5ca18954cf2c32c4f776e53162a0e8f (diff)
downloadgcc-99a5e049bad4d20dc10a9934cac65102b6b82977.zip
gcc-99a5e049bad4d20dc10a9934cac65102b6b82977.tar.gz
gcc-99a5e049bad4d20dc10a9934cac65102b6b82977.tar.bz2
re PR debug/49262 (3-yr-old infinite loop in dwarf2out.c)
PR debug/49262 * dwarf2out.c (native_encode_initializer): Decrement count in each iteration. From-SVN: r174715
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/dwarf2out.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 967371c..a4164a3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
2011-06-06 Jakub Jelinek <jakub@redhat.com>
+ PR debug/49262
+ * dwarf2out.c (native_encode_initializer): Decrement count in each
+ iteration.
+
PR debug/49294
* dwarf2out.c (mem_loc_descriptor) <do_shift>: Give up for
non-MODE_INT modes.
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 0fa7f91..776066b 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -18065,7 +18065,7 @@ native_encode_initializer (tree init, unsigned char *array, int size)
{
int count = tree_low_cst (TREE_OPERAND (index, 1), 0)
- tree_low_cst (TREE_OPERAND (index, 0), 0);
- while (count > 0)
+ while (count-- > 0)
{
if (val)
memcpy (array + curpos, array + pos, fieldsize);