summaryrefslogtreecommitdiffstats
path: root/libelf
diff options
context:
space:
mode:
authorMark Wielaard <mjw@redhat.com>2015-09-23 20:44:06 +0200
committerMark Wielaard <mjw@redhat.com>2015-09-23 20:49:54 +0200
commitd8698e55cbe95e56c3a4cbd67c320048ea4f087a (patch)
treef244c37048ebdee1931e446b426ab66c839379a2 /libelf
parent1ccdfb683ad6c7e59793136c3a657ddf131cafd1 (diff)
downloadandroid_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/ChangeLog14
-rw-r--r--libelf/elf32_getehdr.c1
-rw-r--r--libelf/elf32_getshdr.c2
-rw-r--r--libelf/elf_error.c1
-rw-r--r--libelf/elf_getphdrnum.c2
-rw-r--r--libelf/elf_getshdrnum.c1
-rw-r--r--libelf/elf_readall.c1
-rw-r--r--libelf/gelf_getehdr.c1
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;