aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/collect2.c7
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1c21031..c95a7ef 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2012-01-03 Olivier Hainque <hainque@adacore.com>
+
+ * collect2.c (main): In AIX specific computations for vector
+ insertions, use CONST_CAST2 to cast from char ** to const char **.
+
2012-01-03 Richard Guenther <rguenther@suse.de>
PR debug/51650
diff --git a/gcc/collect2.c b/gcc/collect2.c
index 92ef7ba..a44b2e7 100644
--- a/gcc/collect2.c
+++ b/gcc/collect2.c
@@ -1481,11 +1481,14 @@ main (int argc, char **argv)
extra space for remaining arguments. */
if (add_nbr >= add_max)
{
- int pos = object - (const char **)object_lst;
+ int pos =
+ object - CONST_CAST2 (const char **, char **,
+ object_lst);
add_max = (add_max == 0) ? 16 : add_max * 2;
object_lst = XRESIZEVEC (char *, object_lst,
object_nbr + add_max);
- object = (const char **) object_lst + pos;
+ object = CONST_CAST2 (const char **, char **,
+ object_lst) + pos;
object_nbr += add_max;
}
*object++ = xstrdup (buf);