diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2023-09-11 19:03:35 +0300 |
---|---|---|
committer | Jia Tan <jiat0218@gmail.com> | 2023-10-31 01:03:25 +0800 |
commit | b71b8922ef3971e5ccffd1e213888d44abe21d11 (patch) | |
tree | 2542fa029c9355df034f8a724a7cce7c587c348c /src/xz | |
parent | Remove incorrect uses of __attribute__((__malloc__)). (diff) | |
download | xz-b71b8922ef3971e5ccffd1e213888d44abe21d11.tar.xz |
xz, xzdec, lzmainfo: Use tuklib_attr_noreturn.
For compatibility with C23's [[noreturn]], tuklib_attr_noreturn
must be at the beginning of declaration (before "extern" or
"static", and even before any GNU C's __attribute__).
This commit also moves all other function attributes to
the beginning of function declarations. "extern" is kept
at the beginning of a line so the attributes are listed on
separate lines before "extern" or "static".
Diffstat (limited to '')
-rw-r--r-- | src/xz/coder.c | 3 | ||||
-rw-r--r-- | src/xz/hardware.h | 3 | ||||
-rw-r--r-- | src/xz/message.h | 30 | ||||
-rw-r--r-- | src/xz/options.c | 3 | ||||
-rw-r--r-- | src/xz/util.h | 8 | ||||
-rw-r--r-- | src/xzdec/xzdec.c | 9 |
6 files changed, 33 insertions, 23 deletions
diff --git a/src/xz/coder.c b/src/xz/coder.c index 589ec072..91d40ed2 100644 --- a/src/xz/coder.c +++ b/src/xz/coder.c @@ -128,7 +128,8 @@ coder_add_filter(lzma_vli id, void *options) } -static void lzma_attribute((__noreturn__)) +tuklib_attr_noreturn +static void memlimit_too_small(uint64_t memory_usage) { message(V_ERROR, _("Memory usage limit is too low for the given " diff --git a/src/xz/hardware.h b/src/xz/hardware.h index 2bb3d7ba..a67b26ef 100644 --- a/src/xz/hardware.h +++ b/src/xz/hardware.h @@ -71,4 +71,5 @@ extern bool hardware_memlimit_mtenc_is_default(void); extern uint64_t hardware_memlimit_mtdec_get(void); /// Display the amount of RAM and memory usage limits and exit. -extern void hardware_memlimit_show(void) lzma_attribute((__noreturn__)); +tuklib_attr_noreturn +extern void hardware_memlimit_show(void); diff --git a/src/xz/message.h b/src/xz/message.h index b264f821..f608ec75 100644 --- a/src/xz/message.h +++ b/src/xz/message.h @@ -44,42 +44,44 @@ extern enum message_verbosity message_verbosity_get(void); /// \brief Print a message if verbosity level is at least "verbosity" /// /// This doesn't touch the exit status. -extern void message(enum message_verbosity verbosity, const char *fmt, ...) - lzma_attribute((__format__(__printf__, 2, 3))); +lzma_attribute((__format__(__printf__, 2, 3))) +extern void message(enum message_verbosity verbosity, const char *fmt, ...); /// \brief Prints a warning and possibly sets exit status /// /// The message is printed only if verbosity level is at least V_WARNING. /// The exit status is set to WARNING unless it was already at ERROR. -extern void message_warning(const char *fmt, ...) - lzma_attribute((__format__(__printf__, 1, 2))); +lzma_attribute((__format__(__printf__, 1, 2))) +extern void message_warning(const char *fmt, ...); /// \brief Prints an error message and sets exit status /// /// The message is printed only if verbosity level is at least V_ERROR. /// The exit status is set to ERROR. -extern void message_error(const char *fmt, ...) - lzma_attribute((__format__(__printf__, 1, 2))); +lzma_attribute((__format__(__printf__, 1, 2))) +extern void message_error(const char *fmt, ...); /// \brief Prints an error message and exits with EXIT_ERROR /// /// The message is printed only if verbosity level is at least V_ERROR. -extern void message_fatal(const char *fmt, ...) - lzma_attribute((__format__(__printf__, 1, 2))) - lzma_attribute((__noreturn__)); +tuklib_attr_noreturn +lzma_attribute((__format__(__printf__, 1, 2))) +extern void message_fatal(const char *fmt, ...); /// Print an error message that an internal error occurred and exit with /// EXIT_ERROR. -extern void message_bug(void) lzma_attribute((__noreturn__)); +tuklib_attr_noreturn +extern void message_bug(void); /// Print a message that establishing signal handlers failed, and exit with /// exit status ERROR. -extern void message_signal_handler(void) lzma_attribute((__noreturn__)); +tuklib_attr_noreturn +extern void message_signal_handler(void); /// Convert lzma_ret to a string. @@ -100,11 +102,13 @@ extern void message_try_help(void); /// Prints the version number to stdout and exits with exit status SUCCESS. -extern void message_version(void) lzma_attribute((__noreturn__)); +tuklib_attr_noreturn +extern void message_version(void); /// Print the help message. -extern void message_help(bool long_help) lzma_attribute((__noreturn__)); +tuklib_attr_noreturn +extern void message_help(bool long_help); /// \brief Set the total number of files to be processed diff --git a/src/xz/options.c b/src/xz/options.c index f4662131..4d5e899c 100644 --- a/src/xz/options.c +++ b/src/xz/options.c @@ -241,7 +241,8 @@ enum { }; -static void lzma_attribute((__noreturn__)) +tuklib_attr_noreturn +static void error_lzma_preset(const char *valuestr) { message_fatal(_("Unsupported LZMA1/LZMA2 preset: %s"), valuestr); diff --git a/src/xz/util.h b/src/xz/util.h index 3fac8961..6d7e1481 100644 --- a/src/xz/util.h +++ b/src/xz/util.h @@ -19,8 +19,8 @@ /// \brief Safe realloc() that never returns NULL -extern void *xrealloc(void *ptr, size_t size) - lzma_attr_alloc_size(2); +lzma_attr_alloc_size(2) +extern void *xrealloc(void *ptr, size_t size); /// \brief Safe strdup() that never returns NULL @@ -101,8 +101,8 @@ extern const char *uint64_to_nicestr(uint64_t value, /// /// A maximum of *left bytes is written starting from *pos. *pos and *left /// are updated accordingly. -extern void my_snprintf(char **pos, size_t *left, const char *fmt, ...) - lzma_attribute((__format__(__printf__, 3, 4))); +lzma_attribute((__format__(__printf__, 3, 4))) +extern void my_snprintf(char **pos, size_t *left, const char *fmt, ...); /// \brief Test if stdin is a terminal diff --git a/src/xzdec/xzdec.c b/src/xzdec/xzdec.c index c1bd1998..556c548d 100644 --- a/src/xzdec/xzdec.c +++ b/src/xzdec/xzdec.c @@ -40,7 +40,8 @@ static int display_errors = 2; -static void lzma_attribute((__format__(__printf__, 1, 2))) +lzma_attribute((__format__(__printf__, 1, 2))) +static void my_errorf(const char *fmt, ...) { va_list ap; @@ -57,7 +58,8 @@ my_errorf(const char *fmt, ...) } -static void lzma_attribute((__noreturn__)) +tuklib_attr_noreturn +static void help(void) { printf( @@ -81,7 +83,8 @@ PACKAGE_NAME " home page: <" PACKAGE_URL ">\n", progname); } -static void lzma_attribute((__noreturn__)) +tuklib_attr_noreturn +static void version(void) { printf(TOOL_FORMAT "dec (" PACKAGE_NAME ") " LZMA_VERSION_STRING "\n" |