diff options
author | Mark Wielaard <mjw@redhat.com> | 2015-09-23 20:44:06 +0200 |
---|---|---|
committer | Mark Wielaard <mjw@redhat.com> | 2015-09-23 20:49:54 +0200 |
commit | d8698e55cbe95e56c3a4cbd67c320048ea4f087a (patch) | |
tree | f244c37048ebdee1931e446b426ab66c839379a2 /libelf | |
parent | 1ccdfb683ad6c7e59793136c3a657ddf131cafd1 (diff) | |
download | android_external_elfutils-d8698e55cbe95e56c3a4cbd67c320048ea4f087a.tar.gz android_external_elfutils-d8698e55cbe95e56c3a4cbd67c320048ea4f087a.tar.bz2 android_external_elfutils-d8698e55cbe95e56c3a4cbd67c320048ea4f087a.zip |
Properly mark all internal function definitions.
Since we banned old style function definitions GCC is able to diagnose
function definitions that don't match the function declaration:
elf32_getehdr.c:78: error: conflicting types for ‘__elf64_getehdr_wrlock’
libelfP.h:498: note: previous declaration of ‘__elf64_getehdr_wrlock’
This happens on i386 because there internal functions are marked with:
# define internal_function __attribute__ ((regparm (3), stdcall))
Make sure all internal function declarations and definitions are marked
with internal_function.
Signed-off-by: Mark Wielaard <mjw@redhat.com>
Diffstat (limited to 'libelf')
-rw-r--r-- | libelf/ChangeLog | 14 | ||||
-rw-r--r-- | libelf/elf32_getehdr.c | 1 | ||||
-rw-r--r-- | libelf/elf32_getshdr.c | 2 | ||||
-rw-r--r-- | libelf/elf_error.c | 1 | ||||
-rw-r--r-- | libelf/elf_getphdrnum.c | 2 | ||||
-rw-r--r-- | libelf/elf_getshdrnum.c | 1 | ||||
-rw-r--r-- | libelf/elf_readall.c | 1 | ||||
-rw-r--r-- | libelf/gelf_getehdr.c | 1 |
8 files changed, 23 insertions, 0 deletions
diff --git a/libelf/ChangeLog b/libelf/ChangeLog index 193d1267..1916877c 100644 --- a/libelf/ChangeLog +++ b/libelf/ChangeLog @@ -1,3 +1,17 @@ +2015-09-23 Mark Wielaard <mjw@redhat.com> + + * elf32_getehdr.c (getehdr_wrlock): Mark as internal_function. + * elf32_getshdr.c (getshdr_rdlock): Likewise. + (getshdr_wrlock): Likewise. + * elf_error.c (__libelf_seterrno): Likewise. + * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Likewise. + (__elf_getphdrnum_chk_rdlock): Likewise. + * elf_getshdrnum.c (__elf_getphdrnum_rdlock): Likewise. + (__elf_getphdrnum_chk_rdlock): Likewise. + * elf_getshdrnum.c (__elf_getshdrnum_rdlock): Likewise. + * elf_readall.c (__libelf_readall): Likewise. + * gelf_getehdr.c (__gelf_getehdr_rdlock): Likewise. + 2015-09-22 Mark Wielaard <mjw@redhat.com> * *.c: Remove old-style function definitions. diff --git a/libelf/elf32_getehdr.c b/libelf/elf32_getehdr.c index 2b9ad1fa..89e3c402 100644 --- a/libelf/elf32_getehdr.c +++ b/libelf/elf32_getehdr.c @@ -75,6 +75,7 @@ getehdr_impl (Elf *elf, int wrlock) } ElfW2(LIBELFBITS,Ehdr) * +internal_function __elfw2(LIBELFBITS,getehdr_wrlock) (Elf *elf) { return getehdr_impl (elf, 1); diff --git a/libelf/elf32_getshdr.c b/libelf/elf32_getshdr.c index a5fdb547..3a6375c1 100644 --- a/libelf/elf32_getshdr.c +++ b/libelf/elf32_getshdr.c @@ -243,6 +243,7 @@ scn_valid (Elf_Scn *scn) } ElfW2(LIBELFBITS,Shdr) * +internal_function __elfw2(LIBELFBITS,getshdr_rdlock) (Elf_Scn *scn) { ElfW2(LIBELFBITS,Shdr) *result; @@ -264,6 +265,7 @@ __elfw2(LIBELFBITS,getshdr_rdlock) (Elf_Scn *scn) } ElfW2(LIBELFBITS,Shdr) * +internal_function __elfw2(LIBELFBITS,getshdr_wrlock) (Elf_Scn *scn) { ElfW2(LIBELFBITS,Shdr) *result; diff --git a/libelf/elf_error.c b/libelf/elf_error.c index d6e5183f..d6bdaab0 100644 --- a/libelf/elf_error.c +++ b/libelf/elf_error.c @@ -283,6 +283,7 @@ static const uint_fast16_t msgidx[ELF_E_NUM] = void +internal_function __libelf_seterrno (int value) { global_error = value >= 0 && value < nmsgidx ? value : ELF_E_UNKNOWN_ERROR; diff --git a/libelf/elf_getphdrnum.c b/libelf/elf_getphdrnum.c index fe70345d..061183bb 100644 --- a/libelf/elf_getphdrnum.c +++ b/libelf/elf_getphdrnum.c @@ -38,6 +38,7 @@ int +internal_function __elf_getphdrnum_rdlock (Elf *elf, size_t *dst) { if (unlikely (elf->state.elf64.ehdr == NULL)) @@ -78,6 +79,7 @@ __elf_getphdrnum_rdlock (Elf *elf, size_t *dst) } int +internal_function __elf_getphdrnum_chk_rdlock (Elf *elf, size_t *dst) { int result = __elf_getphdrnum_rdlock (elf, dst); diff --git a/libelf/elf_getshdrnum.c b/libelf/elf_getshdrnum.c index 4875c199..18e5d14a 100644 --- a/libelf/elf_getshdrnum.c +++ b/libelf/elf_getshdrnum.c @@ -39,6 +39,7 @@ int +internal_function __elf_getshdrnum_rdlock (Elf *elf, size_t *dst) { int result = 0; diff --git a/libelf/elf_readall.c b/libelf/elf_readall.c index 52a0b4e5..384d2512 100644 --- a/libelf/elf_readall.c +++ b/libelf/elf_readall.c @@ -66,6 +66,7 @@ set_address (Elf *elf, size_t offset) char * +internal_function __libelf_readall (Elf *elf) { /* Get the file. */ diff --git a/libelf/gelf_getehdr.c b/libelf/gelf_getehdr.c index cace0ef6..abeb70c4 100644 --- a/libelf/gelf_getehdr.c +++ b/libelf/gelf_getehdr.c @@ -40,6 +40,7 @@ GElf_Ehdr * +internal_function __gelf_getehdr_rdlock (Elf *elf, GElf_Ehdr *dest) { GElf_Ehdr *result = NULL; |