]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Replace ISC_NORETURN with C11's noreturn
authorOndřej Surý <ondrej@sury.org>
Mon, 11 Oct 2021 10:57:27 +0000 (12:57 +0200)
committerOndřej Surý <ondrej@isc.org>
Fri, 25 Mar 2022 07:33:43 +0000 (08:33 +0100)
C11 has builtin support for _Noreturn function specifier with
convenience noreturn macro defined in <stdnoreturn.h> header.

Replace ISC_NORETURN macro by C11 noreturn with fallback to
__attribute__((noreturn)) if the C11 support is not complete.

36 files changed:
bin/check/named-checkconf.c
bin/check/named-checkzone.c
bin/confgen/rndc-confgen.c
bin/confgen/tsig-keygen.c
bin/confgen/util.h
bin/delv/delv.c
bin/dig/dig.c
bin/dig/dighost.h
bin/dig/host.c
bin/dig/nslookup.c
bin/dnssec/dnssec-cds.c
bin/dnssec/dnssec-dsfromkey.c
bin/dnssec/dnssec-importkey.c
bin/dnssec/dnssec-keyfromlabel.c
bin/dnssec/dnssec-keygen.c
bin/dnssec/dnssec-revoke.c
bin/dnssec/dnssec-settime.c
bin/dnssec/dnssec-signzone.c
bin/dnssec/dnssec-verify.c
bin/dnssec/dnssectool.h
bin/named/include/named/main.h
bin/named/main.c
bin/named/server.c
bin/nsupdate/nsupdate.c
bin/rndc/rndc.c
bin/rndc/util.h
bin/tests/system/resolve.c
bin/tools/dnstap-read.c
bin/tools/mdig.c
bin/tools/named-rrchecker.c
bin/tools/nsec3hash.c
configure.ac
lib/isc/include/isc/assertions.h
lib/isc/include/isc/attributes.h
lib/isc/include/isc/error.h
lib/ns/tests/plugin_test.c

index 06fd59cb8d2f36bc03fbfa51fed9f5bff56ebddf..204bd1fffc7d5354aa31f9b42c702ab30d1b537e 100644 (file)
@@ -58,7 +58,7 @@ isc_log_t *logc = NULL;
        } while (0)
 
 /*% usage */
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index ffee5bcd7769dc063e9254138b07b16354eb5ac9..4814323f0bb4832edf4fbebcab2feb5154c25e72 100644 (file)
@@ -65,7 +65,7 @@ static enum { progmode_check, progmode_compile } progmode;
                }                                                             \
        } while (0)
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 2cea509befdddf1bafdf3a704a067d4b5b38554e..e0786be7824d09b9f3220975bf87d4def498f5f6 100644 (file)
@@ -61,7 +61,7 @@ bool verbose = false;
 
 const char *keyfile, *keydef;
 
-ISC_NORETURN static void
+noreturn static void
 usage(int status);
 
 static void
index b34d099faa7a37c9356cac75307d9844a44d97c0..dd39ad8726407434394e61d885f887ba9484f732 100644 (file)
@@ -54,7 +54,7 @@ const char *progname;
 static enum { progmode_keygen, progmode_confgen } progmode;
 bool verbose = false; /* needed by util.c but not used here */
 
-ISC_NORETURN static void
+noreturn static void
 usage(int status);
 
 static void
index 0567ad33b1dd13c339ee516b67e76dc98d9d4505..4ac83e5143338f142d8c798a4b74cc056b222359 100644 (file)
@@ -36,7 +36,7 @@ ISC_LANG_BEGINDECLS
 void
 notify(const char *fmt, ...) ISC_FORMAT_PRINTF(1, 2);
 
-ISC_NORETURN void
+noreturn void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 ISC_LANG_ENDDECLS
index 360b9839797ab36224d3f30f2c373775d6f79585..486370e64d1fa8f6c8b45a280ca186647d084e5f 100644 (file)
@@ -208,7 +208,7 @@ usage(void) {
        exit(1);
 }
 
-ISC_NORETURN static void
+noreturn static void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 static void
index 7a7c648d8ec2e164bd01da030ed135285fa8115b..6ad7f29da3b303eb7dfe5d0a9048c3956a05a403 100644 (file)
@@ -113,7 +113,7 @@ usage(void) {
        fprintf(stderr, "Press <Help> for complete list of options\n");
 }
 #else  /* if TARGET_OS_IPHONE */
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index e38e319f5366ca4ddcea17c40f11f5f9bfd048d2..afefed40c27828564277400695982fc95b5b0ad9 100644 (file)
@@ -276,13 +276,13 @@ getaddresses(dig_lookup_t *lookup, const char *host, isc_result_t *resultp);
 isc_result_t
 get_reverse(char *reverse, size_t len, char *value, bool strict);
 
-ISC_NORETURN void
+noreturn void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 void
 warn(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
-ISC_NORETURN void
+noreturn void
 digexit(void);
 
 void
index f0617833d8e35c02f772007a3ca7bc97480b9a94..1a42a87386a196b0023428a60827d90d521fd502 100644 (file)
@@ -101,7 +101,7 @@ rcode_totext(dns_rcode_t rcode) {
        return (totext.deconsttext);
 }
 
-ISC_NORETURN static void
+noreturn static void
 show_usage(void);
 
 static void
index 742bb7851a5df9f92dea8020fa1dcb87f5fc86ee..92bc2c2fa931daada37fb8f3dd92ff11b1e21a56 100644 (file)
@@ -849,7 +849,7 @@ get_next_command(void) {
        }
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index ceee2db2978c0017af1d6352b73ee29c3e80d36f..42750d26f02f7ae200ebc58ea979bbbfd240c404 100644 (file)
@@ -1015,7 +1015,7 @@ nsdiff(uint32_t ttl, dns_rdataset_t *oldset, dns_rdataset_t *newset) {
        }
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index fa3ef72d724e9147b2798a0dd9f90414ba22cb29..42aa9e5c7b0db565c540642ab4c6bf7420ee3277 100644 (file)
@@ -324,7 +324,7 @@ emits(bool showall, bool cds, dns_rdata_t *rdata) {
        }
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 6c1d2f22cdaa185f0638bf66c40d92ed99804530..441f7c3f8b5993c9e295ffa14ec3f4967a615241 100644 (file)
@@ -263,7 +263,7 @@ emit(const char *dir, dns_rdata_t *rdata) {
        dst_key_free(&key);
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index eca8f86b81c3fd7da86d037457106125231f19f7..4d66f8f22b59b40ec4514d596e118916e35591fd 100644 (file)
@@ -44,7 +44,7 @@
 
 const char *program = "dnssec-keyfromlabel";
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 64ad35792348d810c4edb1fce99209be4daa4a72..890b4225ec61ce8774a838dfce29bbfe1c3eeb31 100644 (file)
@@ -67,7 +67,7 @@ const char *program = "dnssec-keygen";
 
 isc_log_t *lctx = NULL;
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 36ee75c718a05d850a95f730e5062ce306dfc9bf..adf3de6fff439a40c22fa1fba1b3aaa2326e61ba 100644 (file)
@@ -39,7 +39,7 @@ const char *program = "dnssec-revoke";
 
 static isc_mem_t *mctx = NULL;
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 6c78c38966556e05a9581b82578c55cd4c21ea1a..1a4f20218ff3aeb854ca759adcf239b45c104b7a 100644 (file)
@@ -43,7 +43,7 @@ const char *program = "dnssec-settime";
 
 static isc_mem_t *mctx = NULL;
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 2cceda3fce0fdae9b96b4629efaa0a429220b486..3c1e34a1c8c8bfed9855eff0664e6062c7d3b400 100644 (file)
@@ -3192,7 +3192,7 @@ print_version(FILE *fp) {
        fprintf(fp, "; %s version %s\n", program, PACKAGE_VERSION);
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index ac2485775b19406c38c3a767814d0768954fa47e..870c24c2082b660208c04447152a2256a96f9a68 100644 (file)
@@ -139,7 +139,7 @@ loadzone(char *file, char *origin, dns_rdataclass_t rdclass, dns_db_t **db) {
        }
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 9f9d9750ac1505c4f1218baa876699baf5da26ea..5bc69cd14d38cedfd5c3f5ca85f042d9cf5cd2ae 100644 (file)
@@ -46,7 +46,7 @@ extern uint8_t dtype[8];
 
 typedef void(fatalcallback_t)(void);
 
-ISC_NORETURN void
+noreturn void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 void
@@ -58,7 +58,7 @@ check_result(isc_result_t result, const char *message);
 void
 vbprintf(int level, const char *fmt, ...) ISC_FORMAT_PRINTF(2, 3);
 
-ISC_NORETURN void
+noreturn void
 version(const char *program);
 
 void
index 76546a60716af72a54d6eb687227ebe4f2d7bff8..7d01851b9bd3a8f33593958b3323f5524f891c31 100644 (file)
@@ -26,7 +26,7 @@
  */
 #define NAMED_MAIN_ARGS "46A:c:d:D:E:fFgL:M:m:n:N:p:sS:t:T:U:u:vVx:X:"
 
-ISC_NORETURN void
+noreturn void
 named_main_earlyfatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 void
index bb4c08bb1ba88bd8ef4be8f45947ab4172489fca..67c16304d99e0016cfb6015de8c65a9b3f43a89c 100644 (file)
@@ -185,7 +185,7 @@ named_main_earlyfatal(const char *format, ...) {
        exit(1);
 }
 
-ISC_NORETURN static void
+noreturn static void
 assertion_failed(const char *file, int line, isc_assertiontype_t type,
                 const char *cond);
 
@@ -239,7 +239,7 @@ assertion_failed(const char *file, int line, isc_assertiontype_t type,
        exit(1);
 }
 
-ISC_NORETURN static void
+noreturn static void
 library_fatal_error(const char *file, int line, const char *format,
                    va_list args) ISC_FORMAT_PRINTF(3, 0);
 
index 831955fef1e90225174feb218582b99c60e679be..5cc167f3ef96734752b97b30a7eaaf9fd33120eb 100644 (file)
@@ -397,7 +397,7 @@ const char *empty_zones[] = {
        NULL
 };
 
-ISC_NORETURN static void
+noreturn static void
 fatal(named_server_t *server, const char *msg, isc_result_t result);
 
 static void
index 7b6b4f8d5bbbf3575012918cae01c40325f1f0ca..302cb358a955323e912ca20cc64a1444f2c8f740 100644 (file)
@@ -187,7 +187,7 @@ sendrequest(isc_sockaddr_t *destaddr, dns_message_t *msg,
 static void
 send_update(dns_name_t *zonename, isc_sockaddr_t *primary);
 
-ISC_NORETURN static void
+noreturn static void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 static void
index 4c43e39ba00a14316e9cf22eadd763cc3aecb25e..619dca140b82a080fc428f3d47d2447b6733674d 100644 (file)
@@ -96,7 +96,7 @@ static isc_nmhandle_t *recvnonce_handle = NULL;
 static void
 rndc_startconnect(isc_sockaddr_t *addr);
 
-ISC_NORETURN static void
+noreturn static void
 usage(int status);
 
 static void
index 0567ad33b1dd13c339ee516b67e76dc98d9d4505..4ac83e5143338f142d8c798a4b74cc056b222359 100644 (file)
@@ -36,7 +36,7 @@ ISC_LANG_BEGINDECLS
 void
 notify(const char *fmt, ...) ISC_FORMAT_PRINTF(1, 2);
 
-ISC_NORETURN void
+noreturn void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 ISC_LANG_ENDDECLS
index 25c97423ddab7d964f8db231dcd1f4acef0cc988..d563d92d8b8a841c62e22ae36e24f0c56d77c155 100644 (file)
@@ -127,7 +127,7 @@ printdata(dns_rdataset_t *rdataset, dns_name_t *owner) {
        return (ISC_R_SUCCESS);
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
index 287d0b806bd816ebb87a33f27588f0e638c23d12..dc7ae919ff26a37b54cb73fa6ed6b3efd48d5d66 100644 (file)
@@ -71,7 +71,7 @@ const char *program = "dnstap-read";
                }                                                     \
        } while (0)
 
-ISC_NORETURN static void
+noreturn static void
 fatal(const char *format, ...);
 
 static void
index af395826b930c2425ddd7d3be12515fd556dc6ea..aec588aef458347333795994d5f3e392effb1388 100644 (file)
@@ -783,7 +783,7 @@ sendqueries(isc_task_t *task, isc_event_t *event) {
        return;
 }
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
@@ -894,7 +894,7 @@ help(void) {
               "Server ID)\n");
 }
 
-ISC_NORETURN static void
+noreturn static void
 fatal(const char *format, ...) ISC_FORMAT_PRINTF(1, 2);
 
 static void
index e6805979677b8c2ece13b63c97fa7a1b6df03f62..2ea0ef48e4f246369709d1ab2f8244fc33cbc331 100644 (file)
@@ -35,7 +35,7 @@ static isc_lex_t *lex;
 
 static isc_lexspecials_t specials;
 
-ISC_NORETURN static void
+noreturn static void
 usage(void);
 
 static void
@@ -52,7 +52,7 @@ usage(void) {
        exit(0);
 }
 
-ISC_NORETURN static void
+noreturn static void
 fatal(const char *format, ...);
 
 static void
index c9f90d004110965fde0b5c086508baeac73f6a89..a6a5ec3a714002ddd18313bdec19aca92ce68a7f 100644 (file)
@@ -35,7 +35,7 @@
 
 const char *program = "nsec3hash";
 
-ISC_NORETURN static void
+noreturn static void
 fatal(const char *format, ...);
 
 static void
index 0139043da12ed12ada5760cb55e992a192b03c0f..8ea89295d5b3ba5cf5f467f318a3ebcef5967fe5 100644 (file)
@@ -1149,7 +1149,7 @@ AC_CHECK_HEADERS(
   ])
 LIBS="$LIBS $ISC_ATOMIC_LIBS"
 
-AC_CHECK_HEADERS([stdalign.h])
+AC_CHECK_HEADERS([stdalign.h stdnoreturn.h])
 
 AC_CHECK_HEADERS([uchar.h])
 
index d5dbced8534df4684cc31ceb597f0e19337e40db..7eafa16011ffdbb021de7873fc94acdf7ec57ffc 100644 (file)
@@ -33,8 +33,7 @@ typedef void (*isc_assertioncallback_t)(const char *, int, isc_assertiontype_t,
                                        const char *);
 
 /* coverity[+kill] */
-ISC_NORETURN
-void
+noreturn void
 isc_assertion_failed(const char *, int, isc_assertiontype_t, const char *);
 
 void isc_assertion_setcallback(isc_assertioncallback_t);
index 7c359d4b71e3fe64665d47711eef1399f8bcbd08..abe615223e9f8de7c285d31430ead1f8f49fc556 100644 (file)
 
 #pragma once
 
-#if HAVE_FUNC_ATTRIBUTE_NORETURN
-#define ISC_NORETURN __attribute__((noreturn))
+#ifdef HAVE_STDNORETURN_H
+#include <stdnoreturn.h>
+#elif HAVE_FUNC_ATTRIBUTE_NORETURN
+#define noreturn __attribute__((noreturn))
 #else
-#define ISC_NORETURN
+#define noreturn
 #endif
 
 #if HAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL
index 37fd1818965d52f1626f721783a13df595563178..ecebab60a28ad9cb0f0a7e9ba3bd87ff888288b7 100644 (file)
@@ -37,11 +37,11 @@ isc_error_unexpected(const char *, int, const char *, ...)
        ISC_FORMAT_PRINTF(3, 4);
 
 /*% fatal error */
-ISC_NORETURN void
+noreturn void
 isc_error_fatal(const char *, int, const char *, ...) ISC_FORMAT_PRINTF(3, 4);
 
 /*% runtimecheck error */
-ISC_NORETURN void
+noreturn void
 isc_error_runtimecheck(const char *, int, const char *);
 
 #define ISC_ERROR_RUNTIMECHECK(cond) \
index f71bb4e12222340423872bb4a9b3305ad85f7b63..0feba053d380851e6dee427e2351b0befb8dc2eb 100644 (file)
@@ -32,7 +32,7 @@
 #include <isc/types.h>
 #include <isc/util.h>
 
-ISC_NORETURN void
+noreturn void
 _fail(const char *const file, const int line);
 
 #include <ns/hooks.h>