summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Wielaard <[email protected]>2015-09-23 20:44:06 +0200
committerMark Wielaard <[email protected]>2015-09-23 20:49:54 +0200
commitd8698e55cbe95e56c3a4cbd67c320048ea4f087a (patch)
treef244c37048ebdee1931e446b426ab66c839379a2
parent1ccdfb683ad6c7e59793136c3a657ddf131cafd1 (diff)
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 <[email protected]>
-rw-r--r--libasm/ChangeLog7
-rw-r--r--libasm/asm_align.c1
-rw-r--r--libasm/asm_end.c1
-rw-r--r--libasm/asm_error.c1
-rw-r--r--libdw/ChangeLog7
-rw-r--r--libdw/dwarf_error.c1
-rw-r--r--libdw/dwarf_formref.c1
-rw-r--r--libdw/libdw_findcu.c1
-rw-r--r--libdw/libdw_visit_scopes.c1
-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
17 files changed, 44 insertions, 0 deletions
diff --git a/libasm/ChangeLog b/libasm/ChangeLog
index 0eb84c6c..7433cb72 100644
--- a/libasm/ChangeLog
+++ b/libasm/ChangeLog
@@ -1,3 +1,10 @@
+2015-09-23 Mark Wielaard <[email protected]>
+
+ * asm_align.c (__libasm_ensure_section_space): Mark as
+ internal_function.
+ * asm_end.c (__libasm_finictx): Likewise.
+ * asm_error.c (__libasm_seterrno): Likewise.
+
2015-09-22 Mark Wielaard <[email protected]>
* asm_*.c: Remove old-style function definitions.
diff --git a/libasm/asm_align.c b/libasm/asm_align.c
index b7708f59..6631c4d7 100644
--- a/libasm/asm_align.c
+++ b/libasm/asm_align.c
@@ -132,6 +132,7 @@ asm_align (AsmScn_t *asmscn, GElf_Word value)
/* Ensure there are at least LEN bytes available in the output buffer
for ASMSCN. */
int
+internal_function
__libasm_ensure_section_space (AsmScn_t *asmscn, size_t len)
{
/* The blocks with the section content are kept in a circular
diff --git a/libasm/asm_end.c b/libasm/asm_end.c
index d629fcd8..d21a70a3 100644
--- a/libasm/asm_end.c
+++ b/libasm/asm_end.c
@@ -554,6 +554,7 @@ free_section (AsmScn_t *scnp)
void
+internal_function
__libasm_finictx (AsmCtx_t *ctx)
{
/* Iterate through section table and free individual entries. */
diff --git a/libasm/asm_error.c b/libasm/asm_error.c
index 54430497..cc3e660b 100644
--- a/libasm/asm_error.c
+++ b/libasm/asm_error.c
@@ -52,6 +52,7 @@ asm_errno (void)
void
+internal_function
__libasm_seterrno (int value)
{
global_error = value;
diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index cb5ec9ce..5a026d87 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,3 +1,10 @@
+2015-09-23 Mark Wielaard <[email protected]>
+
+ * dwarf_error.c (__libdw_seterrno): Mark as internal_function.
+ * dwarf_formref.c (__libdw_formref): Likewise.
+ * libdw_findcu.c (__libdw_findcu): Likewise.
+ * libdw_visit_scopes.c (__libdw_visit_scopes): Likewise.
+
2015-09-22 Mark Wielaard <[email protected]>
* *.c: Remove old-style function definitions.
diff --git a/libdw/dwarf_error.c b/libdw/dwarf_error.c
index c431bd3e..66fdc81a 100644
--- a/libdw/dwarf_error.c
+++ b/libdw/dwarf_error.c
@@ -100,6 +100,7 @@ static const char *errmsgs[] =
void
+internal_function
__libdw_seterrno (int value)
{
global_error = (value >= 0 && value < (int) nerrmsgs
diff --git a/libdw/dwarf_formref.c b/libdw/dwarf_formref.c
index c5fb19b1..2240a258 100644
--- a/libdw/dwarf_formref.c
+++ b/libdw/dwarf_formref.c
@@ -35,6 +35,7 @@
#include "libdwP.h"
int
+internal_function
__libdw_formref (Dwarf_Attribute *attr, Dwarf_Off *return_offset)
{
const unsigned char *datap = attr->valp;
diff --git a/libdw/libdw_findcu.c b/libdw/libdw_findcu.c
index 5c03843c..082307b0 100644
--- a/libdw/libdw_findcu.c
+++ b/libdw/libdw_findcu.c
@@ -133,6 +133,7 @@ __libdw_intern_next_unit (Dwarf *dbg, bool debug_types)
}
struct Dwarf_CU *
+internal_function
__libdw_findcu (Dwarf *dbg, Dwarf_Off start, bool debug_types)
{
void **tree = debug_types ? &dbg->tu_tree : &dbg->cu_tree;
diff --git a/libdw/libdw_visit_scopes.c b/libdw/libdw_visit_scopes.c
index c882e4a5..5e5c26fd 100644
--- a/libdw/libdw_visit_scopes.c
+++ b/libdw/libdw_visit_scopes.c
@@ -65,6 +65,7 @@ may_have_scopes (Dwarf_Die *die)
}
int
+internal_function
__libdw_visit_scopes (unsigned int depth, struct Dwarf_Die_Chain *root,
struct Dwarf_Die_Chain *imports,
int (*previsit) (unsigned int,
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 <[email protected]>
+
+ * 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 <[email protected]>
* *.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;