summaryrefslogtreecommitdiff
path: root/gcc/objc
diff options
context:
space:
mode:
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-12 23:58:16 +0000
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-12 23:58:16 +0000
commitc4e3ffb1f916d8501f39d1beb7f65160c939afe5 (patch)
treed1eb9cf5a1c5a4511b1235ff768b0e571662c301 /gcc/objc
parentf45e918245bbc04a34758801624c7b9fff3ebcb9 (diff)
downloadgcc-c4e3ffb1f916d8501f39d1beb7f65160c939afe5.tar.gz
2005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
PR objc/25348 * objc-act.c (encode_array): Handle arrays to zero sized types. 2005-12-12 Andrew Pinski <pinskia@physics.uc.edu> PR objc/25348 * objc.dg/encode-9.m: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108432 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/objc')
-rw-r--r--gcc/objc/ChangeLog5
-rw-r--r--gcc/objc/objc-act.c9
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index f2a6fd692ac..5f7951f82db 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,8 @@
+2005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR objc/25348
+ * objc-act.c (encode_array): Handle arrays to zero sized types.
+
2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
* Make-lang.in (objc.all.build, objc.install-normal): Remove.
diff --git a/gcc/objc/objc-act.c b/gcc/objc/objc-act.c
index 817553a1eed..201a722c232 100644
--- a/gcc/objc/objc-act.c
+++ b/gcc/objc/objc-act.c
@@ -7920,9 +7920,12 @@ encode_array (tree type, int curtype, int format)
return;
}
- sprintf (buffer, "[" HOST_WIDE_INT_PRINT_DEC,
- (TREE_INT_CST_LOW (an_int_cst)
- / TREE_INT_CST_LOW (TYPE_SIZE (array_of))));
+ if (TREE_INT_CST_LOW (TYPE_SIZE (array_of)) == 0)
+ sprintf (buffer, "[" HOST_WIDE_INT_PRINT_DEC, (HOST_WIDE_INT)0);
+ else
+ sprintf (buffer, "[" HOST_WIDE_INT_PRINT_DEC,
+ TREE_INT_CST_LOW (an_int_cst)
+ / TREE_INT_CST_LOW (TYPE_SIZE (array_of)));
obstack_grow (&util_obstack, buffer, strlen (buffer));
encode_type (array_of, curtype, format);