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

David Edelsohn <dje at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
             Status|UNCONFIRMED                 |NEW
                URL|                            |http://gcc.gnu.org/ml/gcc-p
                   |                            |atches/2012-09/msg00532.htm
                   |                            |l
   Last reconfirmed|                            |2012-09-13
                 CC|                            |dje at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #19 from David Edelsohn <dje at gcc dot gnu.org> 2012-09-13 
20:10:17 UTC ---
First, this is a warning from the AIX linker, not an error and not a failure. 
The warning technically is correct but slightly misleading and should not cause
problems.

When the libstdc++ shared library is created for AIX, all global symbols are
exported.  AIX does not understand "visibility" decorations, but GCC uses it to
determine if a function will be local to a translation unit, not requiring a
"nop" after the call. Because they symbols are global and exported, the linker
complains.

GCC -fpic/-fPIC (XLC -qpic) no longer means position independent code, but that
the code will be used in a shared library.  XLC defaults to -qpic, GCC does
not.  Changing GCC for AIX to the XLC default causes other problems, so the
best solution is to add -fPIC to the link line of shared libraries so that GCC
on AIX looks more like GCC on Linux, which is what the patch does.  This
removes all but one warning, which probably is due to a latent bug in G++
itself.

Reply via email to