From 49ea46667ffbaac7d3dc26f49720b98d4ac19af8 Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Mon, 11 Sep 2006 01:34:21 +0000 Subject: [PATCH] Build fixes for gcc 4.0 with -Werror, from Tito. --- e2fsprogs/Makefile.in | 2 +- e2fsprogs/blkid/list.h | 123 +++------------------------------------ e2fsprogs/e2fsck.c | 10 ++-- e2fsprogs/e2fsck.h | 7 +-- networking/udhcp/dhcpc.c | 2 +- sysklogd/syslogd.c | 2 +- 6 files changed, 17 insertions(+), 129 deletions(-) diff --git a/e2fsprogs/Makefile.in b/e2fsprogs/Makefile.in index 89470b787..160271686 100644 --- a/e2fsprogs/Makefile.in +++ b/e2fsprogs/Makefile.in @@ -12,7 +12,7 @@ E2FSPROGS_SRC:=$(top_srcdir)/e2fsprogs E2FSPROGS_CFLAGS := -include $(E2FSPROGS_SRC)/e2fsbb.h BLKID_SRC := cache.c dev.c devname.c devno.c blkid_getsize.c \ - probe.c read.c resolve.c save.c tag.c + probe.c read.c resolve.c save.c tag.c list.c BLKID_SRCS := $(patsubst %,blkid/%, $(BLKID_SRC)) BLKID_OBJS := $(patsubst %.c,%.o, $(BLKID_SRCS)) diff --git a/e2fsprogs/blkid/list.h b/e2fsprogs/blkid/list.h index cbf16a059..8b06d853b 100644 --- a/e2fsprogs/blkid/list.h +++ b/e2fsprogs/blkid/list.h @@ -6,12 +6,6 @@ extern "C" { #endif -#ifdef __GNUC__ -#define _INLINE_ static __inline__ -#else /* For Watcom C */ -#define _INLINE_ static inline -#endif - /* * Simple doubly linked list implementation. * @@ -35,113 +29,14 @@ struct list_head { (ptr)->next = (ptr); (ptr)->prev = (ptr); \ } while (0) -/* - * Insert a new entry between two known consecutive entries. - * - * This is only for internal list manipulation where we know - * the prev/next entries already! - */ -_INLINE_ void __list_add(struct list_head * add, - struct list_head * prev, - struct list_head * next) -{ - next->prev = add; - add->next = next; - add->prev = prev; - prev->next = add; -} - -/** - * list_add - add a new entry - * @add: new entry to be added - * @head: list head to add it after - * - * Insert a new entry after the specified head. - * This is good for implementing stacks. - */ -_INLINE_ void list_add(struct list_head *add, struct list_head *head) -{ - __list_add(add, head, head->next); -} - -/** - * list_add_tail - add a new entry - * @add: new entry to be added - * @head: list head to add it before - * - * Insert a new entry before the specified head. - * This is useful for implementing queues. - */ -_INLINE_ void list_add_tail(struct list_head *add, struct list_head *head) -{ - __list_add(add, head->prev, head); -} - -/* - * Delete a list entry by making the prev/next entries - * point to each other. - * - * This is only for internal list manipulation where we know - * the prev/next entries already! - */ -_INLINE_ void __list_del(struct list_head * prev, - struct list_head * next) -{ - next->prev = prev; - prev->next = next; -} - -/** - * list_del - deletes entry from list. - * @entry: the element to delete from the list. - * - * list_empty() on @entry does not return true after this, @entry is - * in an undefined state. - */ -_INLINE_ void list_del(struct list_head *entry) -{ - __list_del(entry->prev, entry->next); -} - -/** - * list_del_init - deletes entry from list and reinitialize it. - * @entry: the element to delete from the list. - */ -_INLINE_ void list_del_init(struct list_head *entry) -{ - __list_del(entry->prev, entry->next); - INIT_LIST_HEAD(entry); -} - -/** - * list_empty - tests whether a list is empty - * @head: the list to test. - */ -_INLINE_ int list_empty(struct list_head *head) -{ - return head->next == head; -} - -/** - * list_splice - join two lists - * @list: the new list to add. - * @head: the place to add it in the first list. - */ -_INLINE_ void list_splice(struct list_head *list, struct list_head *head) -{ - struct list_head *first = list->next; - - if (first != list) { - struct list_head *last = list->prev; - struct list_head *at = head->next; - - first->prev = head; - head->next = first; - - last->next = at; - at->prev = last; - } -} +void __list_add(struct list_head * add, struct list_head * prev, struct list_head * next); +void list_add(struct list_head *add, struct list_head *head); +void list_add_tail(struct list_head *add, struct list_head *head); +void __list_del(struct list_head * prev, struct list_head * next); +void list_del(struct list_head *entry); +void list_del_init(struct list_head *entry); +int list_empty(struct list_head *head); +void list_splice(struct list_head *list, struct list_head *head); /** * list_entry - get the struct for this entry @@ -171,8 +66,6 @@ _INLINE_ void list_splice(struct list_head *list, struct list_head *head) for (pos = (head)->next, pnext = pos->next; pos != (head); \ pos = pnext, pnext = pos->next) -#undef _INLINE_ - #ifdef __cplusplus } #endif diff --git a/e2fsprogs/e2fsck.c b/e2fsprogs/e2fsck.c index 4c0614add..985f9fd5c 100644 --- a/e2fsprogs/e2fsck.c +++ b/e2fsprogs/e2fsck.c @@ -726,7 +726,7 @@ static void e2fsck_free_dir_info(e2fsck_t ctx) /* * Return the count of number of directories in the dir_info structure */ -static inline int e2fsck_get_num_dirinfo(e2fsck_t ctx) +static int e2fsck_get_num_dirinfo(e2fsck_t ctx) { return ctx->dir_info_count; } @@ -1363,7 +1363,7 @@ e2fsck_handle_write_error(io_channel channel, unsigned long block, int count, return error; } -static inline const char *ehandler_operation(const char *op) +static const char *ehandler_operation(const char *op) { const char *ret = operation; @@ -1491,7 +1491,7 @@ static void ll_rw_block(int rw, int nr, struct buffer_head *bhp[]) } } -static inline void mark_buffer_dirty(struct buffer_head *bh) +static void mark_buffer_dirty(struct buffer_head *bh) { bh->b_dirty = 1; } @@ -1508,7 +1508,7 @@ static void brelse(struct buffer_head *bh) ext2fs_free_mem(&bh); } -static inline int buffer_uptodate(struct buffer_head *bh) +static int buffer_uptodate(struct buffer_head *bh) { return bh->b_uptodate; } @@ -11074,7 +11074,7 @@ struct jbd_revoke_table_s /* Utility functions to maintain the revoke table */ /* Borrowed from buffer.c: this is a tried and tested block hash function */ -static inline int hash(journal_t *journal, unsigned long block) +static int hash(journal_t *journal, unsigned long block) { struct jbd_revoke_table_s *table = journal->j_revoke; int hash_shift = table->hash_shift; diff --git a/e2fsprogs/e2fsck.h b/e2fsprogs/e2fsck.h index 52db828a9..e520632a0 100644 --- a/e2fsprogs/e2fsck.h +++ b/e2fsprogs/e2fsck.h @@ -629,12 +629,7 @@ struct e2fsck_struct { }; - -static inline int tid_gt(tid_t x, tid_t y) -{ - int difference = (x - y); - return (difference > 0); -} +#define tid_gt(x, y) ((x - y) > 0) static inline int tid_geq(tid_t x, tid_t y) { diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c index eb1f1db8d..ff4d5018c 100644 --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c @@ -144,7 +144,7 @@ int udhcpc_main(int argc, char *argv[]) { uint8_t *temp, *message; unsigned long t1 = 0, t2 = 0, xid = 0; - unsigned long start = 0, lease; + unsigned long start = 0, lease = 0; fd_set rfds; int retval; struct timeval tv; diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c index f3de04653..9a5a04adb 100644 --- a/sysklogd/syslogd.c +++ b/sysklogd/syslogd.c @@ -258,7 +258,7 @@ void circ_message(const char *msg); static void message(char *fmt, ...) __attribute__ ((format(printf, 1, 2))); static void message(char *fmt, ...) { - int fd; + int fd = -1; struct flock fl; va_list arguments;