OSDN Git Service

fix inconsistent visibility for __hwcap and __sysinfo symbols
authorRich Felker <dalias@aerifal.cx>
Wed, 22 Apr 2015 06:53:41 +0000 (02:53 -0400)
committerRich Felker <dalias@aerifal.cx>
Wed, 22 Apr 2015 06:53:41 +0000 (02:53 -0400)
these are used as hidden by asm files (and such use is the whole
reason they exist), but their actual definitions were not hidden.

src/env/__libc_start_main.c
src/internal/libc.h

index 10e5590..f6f3b14 100644 (file)
@@ -20,9 +20,6 @@ weak_alias(dummy1, __init_ssp);
 
 #define AUX_CNT 38
 
-extern size_t __hwcap, __sysinfo;
-extern char *__progname, *__progname_full;
-
 #ifndef SHARED
 static
 #endif
index 00d1b41..51ee186 100644 (file)
@@ -28,8 +28,6 @@ struct __libc {
        struct __locale_struct global_locale;
 };
 
-extern size_t __hwcap;
-
 #ifndef PAGE_SIZE
 #define PAGE_SIZE libc.page_size
 #endif
@@ -43,6 +41,9 @@ extern size_t __hwcap;
 extern struct __libc __libc ATTR_LIBC_VISIBILITY;
 #define libc __libc
 
+extern size_t __hwcap ATTR_LIBC_VISIBILITY;
+extern size_t __sysinfo ATTR_LIBC_VISIBILITY;
+extern char *__progname, *__progname_full;
 
 /* Designed to avoid any overhead in non-threaded processes */
 void __lock(volatile int *) ATTR_LIBC_VISIBILITY;