http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48440

--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> 2011-04-04 22:15:54 
UTC ---
This patch:

diff --git a/gcc/cgraphbuild.c b/gcc/cgraphbuild.c
index 3948cf6..c80d7ab 100644
--- a/gcc/cgraphbuild.c
+++ b/gcc/cgraphbuild.c
@@ -56,7 +56,10 @@ record_reference (tree *tp, int *walk_subtrees, void *data)
   t = canonicalize_constructor_val (t);
   if (!t)
     t = *tp;
-  else if (t != *tp)
+  else if (t != *tp
+       && !(Pmode != ptr_mode
+        && TREE_CODE (t) == ADDR_EXPR
+        && TREE_CODE (*tp) == CONVERT_EXPR))
     *tp = t;

   switch (TREE_CODE (t))

seems to work.

Reply via email to