File 0239-erts-Modernize-K-R-style-functions.patch of Package erlang

From d5fe11a8925293c83da777c2af7d8211d6a035ab Mon Sep 17 00:00:00 2001
From: Frej Drejhammar <frej.drejhammar@gmail.com>
Date: Thu, 6 Apr 2023 08:54:16 +0200
Subject: [PATCH] erts: Modernize K&R-style functions

Clang 16 now warns about functions using K&R syntax. Instead of
juggling with compiler warning options, it is better to just bite the
bullet and modernize the source code.
---
 erts/emulator/beam/beam_file.c          |  2 +-
 erts/emulator/beam/code_ix.c            |  8 ++++----
 erts/emulator/beam/erl_arith.c          |  2 +-
 erts/emulator/beam/erl_db.c             |  2 +-
 erts/emulator/beam/erl_md5.c            | 26 ++++++++-----------------
 erts/emulator/beam/erl_nif.c            |  2 +-
 erts/emulator/beam/erl_posix_str.c      |  3 +--
 erts/emulator/beam/erl_trace.c          |  4 ++--
 erts/emulator/beam/erl_vm.h             |  2 +-
 erts/emulator/beam/io.c                 |  3 +--
 erts/emulator/beam/packet_parser.c      |  2 +-
 erts/emulator/beam/utils.c              |  2 +-
 erts/emulator/drivers/common/inet_drv.c | 10 ++++------
 erts/emulator/nifs/common/socket_util.c |  2 +-
 erts/emulator/sys/unix/erl_unix_sys.h   |  2 +-
 erts/emulator/sys/unix/sys_env.c        | 10 +++++-----
 erts/emulator/utils/make_driver_tab     |  2 +-
 erts/epmd/src/epmd_srv.c                |  7 +------
 erts/etc/common/heart.c                 | 22 ++++++---------------
 19 files changed, 42 insertions(+), 71 deletions(-)

diff --git a/erts/emulator/beam/beam_file.c b/erts/emulator/beam/beam_file.c
index e1215e8640..d210d0fc16 100644
--- a/erts/emulator/beam/beam_file.c
+++ b/erts/emulator/beam/beam_file.c
@@ -1318,7 +1318,7 @@ int iff_read_chunk(IFF_File *iff, Uint id, IFF_Chunk *chunk)
     return read_beam_chunks(iff, 1, &id, chunk);
 }
 
-void beamfile_init() {
+void beamfile_init(void) {
     Eterm suffix;
     Eterm *hp;
 
diff --git a/erts/emulator/beam/code_ix.c b/erts/emulator/beam/code_ix.c
index e2e275442e..3888c72363 100644
--- a/erts/emulator/beam/code_ix.c
+++ b/erts/emulator/beam/code_ix.c
@@ -276,7 +276,7 @@ int erts_try_seize_code_stage_permission(Process* c_p)
     return try_seize_code_permission(&code_stage_permission, c_p, NULL, NULL);
 }
 
-void erts_release_code_stage_permission() {
+void erts_release_code_stage_permission(void) {
     release_code_permission(&code_stage_permission);
 }
 
@@ -304,7 +304,7 @@ int erts_try_seize_code_load_permission(Process* c_p) {
     return 0;
 }
 
-void erts_release_code_load_permission() {
+void erts_release_code_load_permission(void) {
     erts_release_code_mod_permission();
     erts_release_code_stage_permission();
 }
@@ -474,7 +474,7 @@ static void schedule_blocking_code_barriers(void *ignored) {
 }
 #endif
 
-void erts_blocking_code_barrier()
+void erts_blocking_code_barrier(void)
 {
 #ifdef DEBUG
     erts_debug_unrequire_code_barrier();
@@ -487,7 +487,7 @@ void erts_blocking_code_barrier()
 #endif
 }
 
-void erts_code_ix_finalize_wait() {
+void erts_code_ix_finalize_wait(void) {
 #ifdef CODE_IX_ISSUE_INSTRUCTION_BARRIERS
     if (erts_atomic32_read_nob(&outstanding_blocking_code_barriers) != 0) {
         ERTS_THR_INSTRUCTION_BARRIER;
diff --git a/erts/emulator/beam/erl_arith.c b/erts/emulator/beam/erl_arith.c
index 813f79edaa..9815dd0a6c 100644
--- a/erts/emulator/beam/erl_arith.c
+++ b/erts/emulator/beam/erl_arith.c
@@ -1310,6 +1310,6 @@ Eterm erts_bnot(Process* p, Eterm arg)
 } 
 
 /* Needed to remove compiler optimization */
-double erts_get_positive_zero_float() {
+double erts_get_positive_zero_float(void) {
     return 0.0f;
 }
diff --git a/erts/emulator/beam/erl_db.c b/erts/emulator/beam/erl_db.c
index 076a407603..8f5e1a9543 100644
--- a/erts/emulator/beam/erl_db.c
+++ b/erts/emulator/beam/erl_db.c
@@ -5523,7 +5523,7 @@ erts_db_foreach_thr_prgr_offheap(void (*func)(ErlOffHeap *, void *),
 
 /* retrieve max number of ets tables */
 Uint
-erts_db_get_max_tabs()
+erts_db_get_max_tabs(void)
 {
     return db_max_tabs;
 }
diff --git a/erts/emulator/beam/erl_nif.c b/erts/emulator/beam/erl_nif.c
index 086dfa95ad..3718fb3c96 100644
--- a/erts/emulator/beam/erl_nif.c
+++ b/erts/emulator/beam/erl_nif.c
@@ -5265,7 +5265,7 @@ erts_unload_nif(struct erl_module_nif* lib)
     deref_nifmod(lib);
 }	
 
-void erl_nif_init()
+void erl_nif_init(void)
 {
     ERTS_CT_ASSERT((offsetof(ErtsResource,data) % 8)
                    == ERTS_MAGIC_BIN_BYTES_TO_ALIGN);
diff --git a/erts/emulator/beam/erl_posix_str.c b/erts/emulator/beam/erl_posix_str.c
index 5b515d6e78..c57c269095 100644
--- a/erts/emulator/beam/erl_posix_str.c
+++ b/erts/emulator/beam/erl_posix_str.c
@@ -47,8 +47,7 @@
  */
 
 char *
-erl_errno_id(error)
-    int error;			/* Posix error number (as from errno). */
+erl_errno_id(int error /* Posix error number (as from errno). */)
 {
     switch (error) {
 #ifdef E2BIG
diff --git a/erts/emulator/beam/erl_trace.c b/erts/emulator/beam/erl_trace.c
index 82d4cf728c..3e19c0506e 100644
--- a/erts/emulator/beam/erl_trace.c
+++ b/erts/emulator/beam/erl_trace.c
@@ -3079,7 +3079,7 @@ erts_tracer_update(ErtsTracer *tracer, const ErtsTracer new_tracer)
     }
 }
 
-static void init_tracer_nif()
+static void init_tracer_nif(void)
 {
     erts_rwmtx_opt_t rwmtx_opt = ERTS_RWMTX_OPT_DEFAULT_INITER;
     rwmtx_opt.type = ERTS_RWMTX_TYPE_EXTREMELY_FREQUENT_READ;
@@ -3092,7 +3092,7 @@ static void init_tracer_nif()
 
 }
 
-int erts_tracer_nif_clear()
+int erts_tracer_nif_clear(void)
 {
 
     erts_rwmtx_rlock(&tracer_mtx);
diff --git a/erts/emulator/beam/erl_vm.h b/erts/emulator/beam/erl_vm.h
index 3c7a6054c5..6d5b7c6e1b 100644
--- a/erts/emulator/beam/erl_vm.h
+++ b/erts/emulator/beam/erl_vm.h
@@ -323,7 +323,7 @@ extern void** beam_ops;
 
 #if ERTS_GLB_INLINE_INCL_FUNC_DEF
 ERTS_GLB_INLINE
-int erts_cp_size()
+int erts_cp_size(void)
 {
     if (erts_frame_layout == ERTS_FRAME_LAYOUT_RA) {
         return 1;
diff --git a/erts/emulator/beam/io.c b/erts/emulator/beam/io.c
index b024782073..14c887a87f 100644
--- a/erts/emulator/beam/io.c
+++ b/erts/emulator/beam/io.c
@@ -3126,8 +3126,7 @@ void erts_lcnt_update_port_locks(int enable) {
  * Parameters:
  * bufsiz - The (maximum) size of the line buffer.
  */
-LineBuf *allocate_linebuf(bufsiz)
-int bufsiz;
+LineBuf *allocate_linebuf(int bufsiz)
 {
     int ovsiz = (bufsiz < LINEBUF_INITIAL) ? bufsiz : LINEBUF_INITIAL;
     LineBuf *lb = (LineBuf *) erts_alloc(ERTS_ALC_T_LINEBUF,
diff --git a/erts/emulator/beam/packet_parser.c b/erts/emulator/beam/packet_parser.c
index 164994a98f..d2ddd01103 100644
--- a/erts/emulator/beam/packet_parser.c
+++ b/erts/emulator/beam/packet_parser.c
@@ -230,7 +230,7 @@ struct tpkt_head {
     unsigned char packet_length[2]; /* size incl header, big-endian (?) */
 };
 
-void packet_parser_init()
+void packet_parser_init(void)
 {
     static int done = 0;
     if (!done) {
diff --git a/erts/emulator/beam/utils.c b/erts/emulator/beam/utils.c
index 647f980e62..1f043869ce 100644
--- a/erts/emulator/beam/utils.c
+++ b/erts/emulator/beam/utils.c
@@ -3749,7 +3749,7 @@ erts_ptr_id(void *ptr)
     return ptr;
 }
 
-const void *erts_get_stacklimit() {
+const void *erts_get_stacklimit(void) {
     return ethr_get_stacklimit();
 }
 
diff --git a/erts/emulator/drivers/common/inet_drv.c b/erts/emulator/drivers/common/inet_drv.c
index a902fd27ad..329c48172c 100644
--- a/erts/emulator/drivers/common/inet_drv.c
+++ b/erts/emulator/drivers/common/inet_drv.c
@@ -4421,7 +4421,7 @@ static void inet_init_sctp(void) {
 }
 #endif /* HAVE_SCTP */
 
-static int inet_init()
+static int inet_init(void)
 {
     if (!sock_init())
 	goto error;
@@ -13875,7 +13875,7 @@ static udp_descriptor* sctp_inet_copy(udp_descriptor* desc, SOCKET s,
 
 
 #ifdef HAVE_UDP
-static int packet_inet_init()
+static int packet_inet_init(void)
 {
     sys_memzero((char *)&disassoc_sa, sizeof(disassoc_sa));
 #ifdef AF_UNSPEC
@@ -15060,8 +15060,7 @@ static MultiTimerData *add_multi_timer(tcp_descriptor *desc, ErlDrvPort port,
 -----------------------------------------------------------------------------*/
 
 static int
-save_subscriber(subs, subs_pid)
-subs_list *subs; ErlDrvTermData subs_pid;
+save_subscriber(subs_list *subs, ErlDrvTermData subs_pid)
 {
   subs_list *tmp;
 
@@ -15083,8 +15082,7 @@ subs_list *subs; ErlDrvTermData subs_pid;
 }
 
 static void
-free_subscribers(subs)
-subs_list *subs;
+free_subscribers(subs_list *subs)
 {
   subs_list *this;
   subs_list *next;
diff --git a/erts/emulator/nifs/common/socket_util.c b/erts/emulator/nifs/common/socket_util.c
index efeb055240..66b27380b8 100644
--- a/erts/emulator/nifs/common/socket_util.c
+++ b/erts/emulator/nifs/common/socket_util.c
@@ -2554,7 +2554,7 @@ MSG_FUNCS
  */
 
 extern
-ErlNifTime esock_timestamp()
+ErlNifTime esock_timestamp(void)
 {
     ErlNifTime monTime = enif_monotonic_time(ERL_NIF_USEC);
     ErlNifTime offTime = enif_time_offset(ERL_NIF_USEC);
diff --git a/erts/emulator/sys/unix/erl_unix_sys.h b/erts/emulator/sys/unix/erl_unix_sys.h
index c93c0dc5cc..3614aecd17 100644
--- a/erts/emulator/sys/unix/erl_unix_sys.h
+++ b/erts/emulator/sys/unix/erl_unix_sys.h
@@ -281,7 +281,7 @@ ERTS_GLB_INLINE ErtsSysPerfCounter erts_sys_perf_counter(void);
 #if ERTS_GLB_INLINE_INCL_FUNC_DEF
 
 ERTS_GLB_FORCE_INLINE ErtsSysPerfCounter
-erts_sys_perf_counter()
+erts_sys_perf_counter(void)
 {
     return (*erts_sys_time_data__.r.o.perf_counter)();
 }
diff --git a/erts/emulator/sys/unix/sys_env.c b/erts/emulator/sys/unix/sys_env.c
index 4d8301f985..eb98e7b635 100644
--- a/erts/emulator/sys/unix/sys_env.c
+++ b/erts/emulator/sys/unix/sys_env.c
@@ -16,7 +16,7 @@ extern char **environ;
 
 static void import_initial_env(void);
 
-void erts_sys_env_init() {
+void erts_sys_env_init(void) {
     erts_rwmtx_init(&sysenv_rwmtx, "environ", NIL,
         ERTS_LOCK_FLAGS_PROPERTY_STATIC | ERTS_LOCK_FLAGS_CATEGORY_GENERIC);
 
@@ -24,21 +24,21 @@ void erts_sys_env_init() {
     import_initial_env();
 }
 
-const erts_osenv_t *erts_sys_rlock_global_osenv() {
+const erts_osenv_t *erts_sys_rlock_global_osenv(void) {
     erts_rwmtx_rlock(&sysenv_rwmtx);
     return &sysenv_global_env;
 }
 
-erts_osenv_t *erts_sys_rwlock_global_osenv() {
+erts_osenv_t *erts_sys_rwlock_global_osenv(void) {
     erts_rwmtx_rwlock(&sysenv_rwmtx);
     return &sysenv_global_env;
 }
 
-void erts_sys_rwunlock_global_osenv() {
+void erts_sys_rwunlock_global_osenv(void) {
     erts_rwmtx_rwunlock(&sysenv_rwmtx);
 }
 
-void erts_sys_runlock_global_osenv() {
+void erts_sys_runlock_global_osenv(void) {
     erts_rwmtx_runlock(&sysenv_rwmtx);
 }
 
diff --git a/erts/emulator/utils/make_driver_tab b/erts/emulator/utils/make_driver_tab
index 4ed9cb0ce8..0749df1cbe 100755
--- a/erts/emulator/utils/make_driver_tab
+++ b/erts/emulator/utils/make_driver_tab
@@ -107,7 +107,7 @@ foreach (@static_drivers) {
 }
 print "    {NULL}\n};\n";
 
-print "void erts_init_static_drivers() {\n";
+print "void erts_init_static_drivers(void) {\n";
 
 my $index = 0;
 foreach (@static_drivers) {
diff --git a/erts/epmd/src/epmd_srv.c b/erts/epmd/src/epmd_srv.c
index 18a589ac27..7613533bdd 100644
--- a/erts/epmd/src/epmd_srv.c
+++ b/erts/epmd/src/epmd_srv.c
@@ -745,12 +745,7 @@ static unsigned int get_creation(Node* node)
 
 /* buf is actually one byte larger than bsize,
    giving place for null termination */
-static void do_request(g, fd, s, buf, bsize)
-     EpmdVars *g;
-     int fd;
-     Connection *s;
-     char *buf;
-     int bsize;
+static void do_request(EpmdVars *g, int fd, Connection *s, char *buf, int bsize)
 {
   char wbuf[OUTBUF_SIZE];	/* Buffer for writing */
   int i;
diff --git a/erts/etc/common/heart.c b/erts/etc/common/heart.c
index 297e41dca2..f45c18f3e6 100644
--- a/erts/etc/common/heart.c
+++ b/erts/etc/common/heart.c
@@ -354,8 +354,7 @@ int main(int argc, char **argv) {
  * message loop
  */
 static int
-message_loop(erlin_fd, erlout_fd)
-     int   erlin_fd, erlout_fd;
+message_loop(int erlin_fd, int erlout_fd)
 {
   int   i;
   time_t now, last_received;
@@ -776,8 +775,7 @@ int wait_until_close_write_or_env_tmo(int tmo) {
  * Sends an HEART_ACK.
  */
 static int
-notify_ack(fd)
-  int   fd;
+notify_ack(int fd)
 {
   struct msg m;
   
@@ -824,9 +822,7 @@ heart_cmd_reply(int fd, char *s)
  *  FIXME.
  */
 static int
-write_message(fd, mp)
-  int   fd;
-  struct msg *mp;
+write_message(int fd, struct msg *mp)
 {
   int len = ntohs(mp->len);
 
@@ -853,9 +849,7 @@ write_message(fd, mp)
  *  message.
  */
 static int
-read_message(fd, mp)
-  int   fd;
-  struct msg *mp;
+read_message(int fd, struct msg *mp)
 {
   int   rlen, i;
   unsigned char* tmp;
@@ -891,9 +885,7 @@ read_message(fd, mp)
  *  bytes read (i.e. len) , 0 if eof, or < 0 if error. len must be > 0.
  */
 static int
-read_fill(fd, buf, len)
-  int   fd, len;
-  char *buf;
+read_fill(int fd, char *buf, int len)
 {
   int   i, got = 0;
 
@@ -914,9 +906,7 @@ read_fill(fd, buf, len)
  *  0 if eof, or < 0 if error. len > maxlen > 0 must hold.
  */
 static int
-read_skip(fd, buf, maxlen, len)
-  int   fd, maxlen, len;
-  char *buf;
+read_skip(int fd, char *buf, int maxlen, int len)
 {
   int   i, got = 0;
   char  c;
-- 
2.35.3

openSUSE Build Service is sponsored by