};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder [OPTIONS] COMMAND ...\n"
"Options:\n"
{ 0, 0, 0, 0 }
};
-static void help_setup_guest(void) {
+static void attribute((noreturn)) help_setup_guest(void) {
xprintf("Usage:\n"
" disorder setup-guest [OPTIONS]\n"
"Options:\n"
"Display the server version" },
};
-static void help_commands(void) {
+static void attribute((noreturn)) help_commands(void) {
unsigned n, max = 0, l;
xprintf("Command summary:\n");
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorderfm [OPTIONS] SOURCE DESTINATION\n"
"Options:\n"
}
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-playrtp [OPTIONS] [[ADDRESS] PORT]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" resample [OPTIONS] < INPUT > OUTPUT\n"
"Options:\n"
{ 0, 0, 0, 0 }
};
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" rtpmon [OPTIONS] [ADDRESS] PORT\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Disobedience - GUI client for DisOrder\n"
"\n"
"Usage:\n"
#ifndef VERSION_H
#define VERSION_H
-void version(const char *name);
+void attribute((noreturn)) version(const char *name);
#endif /* VERSION_H */
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" %s [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-choose [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-dbupgrade [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-deadlock [OPTIONS]\n"
"Options:\n"
};
/* Display usage message and terminate. */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-decode [OPTIONS] PATH\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorderd [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-dump [OPTIONS] --dump|--undump PATH\n"
" disorder-dump [OPTIONS] --recompute-aliases\n"
#include <gst/app/gstappsink.h>
#include <gst/audio/audio.h>
-/* The only application we have for `attribute' is declaring function
+/* The only applications we have for `attribute' is declaring function
* arguments as being unused, because we have a lot of callback functions
- * which are meant to comply with an externally defined interface.
+ * which are meant to comply with an externally defined interface; and
+ * marking `help' as not returning.
*/
#ifdef __GNUC__
+# define NORETURN __attribute__((noreturn))
# define UNUSED __attribute__((unused))
#endif
{ 0, 0, 0, 0 }
};
-static void help(void)
+static void NORETURN help(void)
{
xprintf("Usage:\n"
" disorder-gstdecode [OPTIONS] PATH\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-normalize [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-rescan [OPTIONS] [PATH...]\n"
"Options:\n"
};
/* Display usage message and terminate. */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-speaker [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-stats [OPTIONS]\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" trackname [OPTIONS] TRACK CONTEXT PART\n"
"Options:\n"
};
/* display usage message and terminate */
-static void help(void) {
+static void attribute((noreturn)) help(void) {
xprintf("Usage:\n"
" disorder-udplog [OPTIONS] ADDRESS PORT\n"
"Options:\n"
}
/* display version number and terminate */
-static void version(void) {
+static void attribute((noreturn)) version(void) {
xprintf("%s", disorder_version_string);
xfclose(stdout);
exit(0);