changeset 4823:414c0c45040e HEAD

Added some noreturn attributes and fixed warnings caused by them.
author Timo Sirainen <tss@iki.fi>
date Sat, 18 Nov 2006 16:06:34 +0200
parents 4b54fc2cb12a
children d52b14f80242
files src/auth/passdb-checkpassword.c src/deliver/smtp-client.c src/lib-imap/imap-parser.c src/lib-imap/imap-parser.h src/lib-mail/istream-header-filter.c src/lib-storage/list/mailbox-list-maildir.c src/lib/istream-tee.c src/lib/mempool-system.c src/master/mail-process.h src/util/dovecotpw.c
diffstat 10 files changed, 28 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/src/auth/passdb-checkpassword.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/auth/passdb-checkpassword.c	Sat Nov 18 16:06:34 2006 +0200
@@ -197,7 +197,7 @@
 	}
 }
 
-static void
+static void __attr_noreturn__
 checkpassword_verify_plain_child(struct auth_request *request,
 				 struct checkpassword_passdb_module *module,
 				 int fd_in, int fd_out)
--- a/src/deliver/smtp-client.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/deliver/smtp-client.c	Sat Nov 18 16:06:34 2006 +0200
@@ -24,8 +24,9 @@
 	return client;
 }
 
-static void smtp_client_run_sendmail(const char *destination,
-				     const char *return_path, int fd)
+static void __attr_noreturn__
+smtp_client_run_sendmail(const char *destination,
+			 const char *return_path, int fd)
 {
 	const char *argv[7];
 
--- a/src/lib-imap/imap-parser.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/lib-imap/imap-parser.c	Sat Nov 18 16:06:34 2006 +0200
@@ -654,17 +654,23 @@
 char *_imap_arg_str_error(const struct imap_arg *arg)
 {
 	i_panic("Tried to access imap_arg type %d as string", arg->type);
+#ifndef __attrs_used__
 	return NULL;
+#endif
 }
 
 uoff_t _imap_arg_literal_size_error(const struct imap_arg *arg)
 {
 	i_panic("Tried to access imap_arg type %d as literal size", arg->type);
+#ifndef __attrs_used__
 	return 0;
+#endif
 }
 
 struct imap_arg_list *_imap_arg_list_error(const struct imap_arg *arg)
 {
 	i_panic("Tried to access imap_arg type %d as list", arg->type);
+#ifndef __attrs_used__
 	return NULL;
+#endif
 }
--- a/src/lib-imap/imap-parser.h	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/lib-imap/imap-parser.h	Sat Nov 18 16:06:34 2006 +0200
@@ -121,8 +121,10 @@
 const char *imap_arg_string(struct imap_arg *arg);
 
 /* Error functions */
-char *_imap_arg_str_error(const struct imap_arg *arg);
-uoff_t _imap_arg_literal_size_error(const struct imap_arg *arg);
-struct imap_arg_list *_imap_arg_list_error(const struct imap_arg *arg);
+char *_imap_arg_str_error(const struct imap_arg *arg) __attr_noreturn__;
+uoff_t _imap_arg_literal_size_error(const struct imap_arg *arg)
+	__attr_noreturn__;
+struct imap_arg_list *_imap_arg_list_error(const struct imap_arg *arg)
+	__attr_noreturn__;
 
 #endif
--- a/src/lib-mail/istream-header-filter.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/lib-mail/istream-header-filter.c	Sat Nov 18 16:06:34 2006 +0200
@@ -279,7 +279,8 @@
 	}
 }
 
-static void _sync(struct _istream *stream __attr_unused__)
+static void __attr_noreturn__
+_sync(struct _istream *stream __attr_unused__)
 {
 	i_panic("istream-header-filter sync() not implemented");
 }
--- a/src/lib-storage/list/mailbox-list-maildir.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/lib-storage/list/mailbox-list-maildir.c	Sat Nov 18 16:06:34 2006 +0200
@@ -85,12 +85,14 @@
 	return TRUE;
 }
 
-static bool
+static bool __attr_noreturn__
 maildir_is_valid_mask(struct mailbox_list *list __attr_unused__,
 		      const char *mask __attr_unused__)
 {
 	i_unreached();
+#ifndef __attrs_used__
 	return FALSE;
+#endif
 }
 
 static bool
--- a/src/lib/istream-tee.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/lib/istream-tee.c	Sat Nov 18 16:06:34 2006 +0200
@@ -124,9 +124,9 @@
 	return ret;
 }
 
-static void _seek(struct _istream *stream __attr_unused__,
-		  uoff_t v_offset __attr_unused__,
-		  bool mark __attr_unused__)
+static void __attr_noreturn__
+_seek(struct _istream *stream __attr_unused__,
+      uoff_t v_offset __attr_unused__, bool mark __attr_unused__)
 {
 	i_panic("tee-istream: seeking unsupported currently");
 }
--- a/src/lib/mempool-system.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/lib/mempool-system.c	Sat Nov 18 16:06:34 2006 +0200
@@ -108,7 +108,8 @@
         return mem;
 }
 
-static void pool_system_clear(pool_t pool __attr_unused__)
+static void __attr_noreturn__
+pool_system_clear(pool_t pool __attr_unused__)
 {
 	i_panic("pool_system_clear() must not be called");
 }
--- a/src/master/mail-process.h	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/master/mail-process.h	Sat Nov 18 16:06:34 2006 +0200
@@ -4,7 +4,8 @@
 struct login_group;
 struct auth_master_reply;
 
-void mail_process_exec(const char *protocol, const char *section);
+void mail_process_exec(const char *protocol, const char *section)
+	__attr_noreturn__;
 
 bool create_mail_process(enum process_type process_type, struct settings *set,
 			 int socket, const struct ip_addr *local_ip,
--- a/src/util/dovecotpw.c	Sat Nov 18 16:05:46 2006 +0200
+++ b/src/util/dovecotpw.c	Sat Nov 18 16:06:34 2006 +0200
@@ -17,7 +17,7 @@
 
 #define DEFAULT_SCHEME "HMAC-MD5"
 
-static void
+static void __attr_noreturn__
 usage(const char *s)
 {
 	fprintf(stderr,