From patchwork Sat May 2 12:38:06 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: mkfs.ubifs: Fix build with gcc 5.1 From: Bernhard Walle X-Patchwork-Id: 467254 Message-Id: <1430570286-30434-1-git-send-email-bernhard@bwalle.de> To: linux-mtd@lists.infradead.org Cc: Bernhard Walle Date: Sat, 2 May 2015 14:38:06 +0200 In gcc 5.1, the default C standard which is used to compile a C file, has changed from gnu89 to gnu11. This changed the meaning of 'extern inline'. See https://gcc.gnu.org/gcc-5/porting_to.html. In mkfs.ubifs, this leads to multiple definitions of hashtable_iterator_key and -hashtable_iterator_value. I think the most pragmatic way to fix the issue is to replace 'extern inline' with 'static inline' here. Fetch from: https://patchwork.ozlabs.org/patch/467254/ Signed-off-by: Bernhard Walle Signed-off-by: Jörg Krause --- mkfs.ubifs/hashtable/hashtable_itr.c | 12 ------------ mkfs.ubifs/hashtable/hashtable_itr.h | 4 ++-- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/mkfs.ubifs/hashtable/hashtable_itr.c b/mkfs.ubifs/hashtable/hashtable_itr.c index 24f4dde..d102453 100644 --- a/mkfs.ubifs/hashtable/hashtable_itr.c +++ b/mkfs.ubifs/hashtable/hashtable_itr.c @@ -35,18 +35,6 @@ hashtable_iterator(struct hashtable *h) } /*****************************************************************************/ -/* key - return the key of the (key,value) pair at the current position */ -/* value - return the value of the (key,value) pair at the current position */ - -void * -hashtable_iterator_key(struct hashtable_itr *i) -{ return i->e->k; } - -void * -hashtable_iterator_value(struct hashtable_itr *i) -{ return i->e->v; } - -/*****************************************************************************/ /* advance - advance the iterator to the next element * returns zero if advanced to end of table */ diff --git a/mkfs.ubifs/hashtable/hashtable_itr.h b/mkfs.ubifs/hashtable/hashtable_itr.h index 87a97eb..5c94a04 100644 --- a/mkfs.ubifs/hashtable/hashtable_itr.h +++ b/mkfs.ubifs/hashtable/hashtable_itr.h @@ -28,7 +28,7 @@ hashtable_iterator(struct hashtable *h); /* hashtable_iterator_key * - return the value of the (key,value) pair at the current position */ -extern inline void * +static inline void * hashtable_iterator_key(struct hashtable_itr *i) { return i->e->k; @@ -37,7 +37,7 @@ hashtable_iterator_key(struct hashtable_itr *i) /*****************************************************************************/ /* value - return the value of the (key,value) pair at the current position */ -extern inline void * +static inline void * hashtable_iterator_value(struct hashtable_itr *i) { return i->e->v;