diff -Nurd rcs-5.9.4.orig/lib/vasnprintf.c rcs-5.9.4/lib/vasnprintf.c
--- rcs-5.9.4.orig/lib/vasnprintf.c	2015-01-07 20:12:58.000000000 -0500
+++ rcs-5.9.4/lib/vasnprintf.c	2018-02-17 16:57:58.000000000 -0500
@@ -4858,7 +4858,7 @@
 #endif
                   *fbp = dp->conversion;
 #if USE_SNPRINTF
-# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
+# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
                 fbp[1] = '%';
                 fbp[2] = 'n';
                 fbp[3] = '\0';
diff --git a/src/b-complain.h b/src/b-complain.h
index 0ffd157..ea0ffc5 100644
--- a/src/b-complain.h
+++ b/src/b-complain.h
@@ -32,12 +32,14 @@ extern void generic_warn (char const *who, char const *fmt, ...)
   printf_string (2, 3);
 extern void generic_error (char const *who, char const *fmt, ...)
   printf_string (2, 3);
+exiting
 extern void generic_fatal (char const *who, char const *fmt, ...)
-  printf_string (2, 3) exiting;
+  printf_string (2, 3);
+exiting
 extern void fatal_syntax (size_t lno, char const *fmt, ...)
-  printf_string (2, 3) exiting;
-extern void fatal_sys (char const *who)
-  exiting;
+  printf_string (2, 3);
+exiting
+extern void fatal_sys (char const *who);
 
 /* Idioms.  Here, prefix P stands for "program" (general operation);
    M for "manifestation"; R for "repository".  */
diff --git a/src/b-fb.h b/src/b-fb.h
index c9850e7..bf5eaf8 100644
--- a/src/b-fb.h
+++ b/src/b-fb.h
@@ -21,9 +21,11 @@
 */
 
 extern int change_mode (int fd, mode_t mode);
-extern void Ierror (void) exiting;
+exiting
+extern void Ierror (void);
 extern void testIerror (FILE *f);
-extern void Oerror (void) exiting;
+exiting
+extern void Oerror (void);
 extern void testOerror (FILE *o);
 extern FILE *fopen_safer (char const *filename, char const *type);
 extern void Ozclose (FILE **p);
diff --git a/src/base.h b/src/base.h
index 163ee09..5e7a9f8 100644
--- a/src/base.h
+++ b/src/base.h
@@ -755,8 +755,8 @@ int dorewrite (bool lockflag, int changed);
 int donerewrite (int changed, time_t newRCStime);
 void ORCSclose (void);
 void ORCSerror (void);
-void unexpected_EOF (void)
-  exiting;
+exiting
+void unexpected_EOF (void);
 void initdiffcmd (struct diffcmd *dc);
 int getdiffcmd (struct fro *finfile, bool delimiter,
                 FILE *foutfile, struct diffcmd *dc);
@@ -831,8 +831,8 @@ char const *date2str (char const date[datesize],
                       char datebuf[datesize + zonelenmax]);
 
 /* rcsutil */
-void thank_you_and_goodnight (int const how)
-  exiting;
+exiting
+void thank_you_and_goodnight (int const how);
 /* These are for ‘thank_you_and_goodnight’.  */
 #define TYAG_ORCSERROR     (1 << 3)
 #define TYAG_DIRTMPUNLINK  (1 << 2)
--
cgit v0.9.0.2