https://sourceware.org/bugzilla/show_bug.cgi?id=34312

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |2.47
            Summary|[2.44 Regression] glibc     |[2.47 Regression] Warning:
                   |failed to build for i686    |local symbol
                   |                            |`_dl_sysinfo_int80' has
                   |                            |non-default visibility
             Status|RESOLVED                    |REOPENED
         Resolution|INVALID                     |---
            Product|glibc                       |binutils
          Component|build                       |gas
                 CC|carlos at redhat dot com           |jbeulich at suse dot com

--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> ---
In i686 glibc build, we got

[hjl@gnu-tgl-3 tmp]$ cat foo.c
#include <stdint.h>

extern void _dl_sysinfo_int80 (void)
  __attribute__ ((visibility ("hidden")));

asm (".text\n\t"
     ".type _dl_sysinfo_int80,@function\n\t"
     "_dl_sysinfo_int80:\n\t"
     "int $0x80;\n\t" 
     "ret");

uintptr_t
foo ()
{
  return (uintptr_t) _dl_sysinfo_int80;
}
[hjl@gnu-tgl-3 tmp]$ gcc -c foo.c
/tmp/cc58rG07.s: Assembler messages:
/tmp/cc58rG07.s: Warning: local symbol `_dl_sysinfo_int80' has non-default
visibility
[hjl@gnu-tgl-3 tmp]$ 

This is done this way so that _dl_sysinfo_int80 can be accessed in foo as
a local/hidden symbol.  This new warning is annoying since the source is
very unlikely to be changed because this warning.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to