aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2016-11-22 23:25:07 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2016-11-22 23:25:07 +0000
commitfca7c76481e49777e46e2954a310dc40b4838d21 (patch)
treecd74dfe0e49e48089f9b37dce138a9c45b3ddd90
parentf3878205ddc2970e384ffaed3a95362763eee9fe (diff)
downloadgcc-fca7c76481e49777e46e2954a310dc40b4838d21.zip
gcc-fca7c76481e49777e46e2954a310dc40b4838d21.tar.gz
gcc-fca7c76481e49777e46e2954a310dc40b4838d21.tar.bz2
re PR go/78431 (ICE in go_append_padding, at godump.c:636)
PR go/78431 PR go/78432 * godump.c (go_format_type): Always pass alignment as 1 when calling go_append_padding at end of struct/union. From-SVN: r242728
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/godump.c11
2 files changed, 10 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c47ebd4..6bc37d3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2016-11-22 Ian Lance Taylor <iant@golang.org>
+
+ PR go/78431
+ PR go/78432
+ * godump.c (go_format_type): Always pass alignment as 1 when
+ calling go_append_padding at end of struct/union.
+
2016-11-22 Jakub Jelinek <jakub@redhat.com>
PR target/78451
diff --git a/gcc/godump.c b/gcc/godump.c
index 608542c..1e9a07e 100644
--- a/gcc/godump.c
+++ b/gcc/godump.c
@@ -1006,14 +1006,9 @@ go_format_type (struct godump_container *container, tree type,
}
}
/* Padding. */
- {
- unsigned int align_unit;
-
- align_unit = (is_anon_record_or_union) ? 1 : TYPE_ALIGN_UNIT (type);
- *p_art_i = go_append_padding
- (ob, prev_field_end, TREE_INT_CST_LOW (TYPE_SIZE_UNIT (type)),
- align_unit, *p_art_i, &prev_field_end);
- }
+ *p_art_i = go_append_padding (ob, prev_field_end,
+ TREE_INT_CST_LOW (TYPE_SIZE_UNIT (type)),
+ 1, *p_art_i, &prev_field_end);
/* Alignment. */
if (!is_anon_record_or_union
&& known_alignment < TYPE_ALIGN_UNIT (type))