diff --git a/err.h b/err.h
index a3e8f97..edb517e 100644
--- a/err.h
+++ b/err.h
@@ -37,9 +37,9 @@
  * This is cut down to just the minimum that we need to build indent.
  */
 
-void	err(int, const char *, ...)
-  pg_attribute_noreturn() pg_attribute_printf(2, 3);
-void	errx(int, const char *, ...)
-  pg_attribute_noreturn() pg_attribute_printf(2, 3);
+pg_noreturn void	err(int, const char *, ...)
+  pg_attribute_printf(2, 3);
+pg_noreturn void	errx(int, const char *, ...)
+  pg_attribute_printf(2, 3);
 
 #endif /* !_ERR_H_ */
diff --git a/io.c b/io.c
index 3ce8bfb..4450d11 100644
--- a/io.c
+++ b/io.c
@@ -49,7 +49,7 @@ static char sccsid[] = "@(#)io.c	8.1 (Berkeley) 6/6/93";
 #include "indent_globs.h"
 #include "indent.h"
 
-int         comment_open;
+static int  comment_open;
 static int  paren_target;
 
 static char *lookahead_buf;	/* malloc'd buffer, or NULL initially */
diff --git a/lexi.c b/lexi.c
index f01596a..8f69338 100644
--- a/lexi.c
+++ b/lexi.c
@@ -70,7 +70,7 @@ struct templ {
  * This table has to be sorted alphabetically, because it'll be used in binary
  * search. For the same reason, string must be the first thing in struct templ.
  */
-struct templ specials[] =
+static struct templ specials[] =
 {
     {"_Bool", 4},
     {"_Complex", 4},
@@ -116,11 +116,11 @@ struct templ specials[] =
     {"while", 5}
 };
 
-const char **typenames;
-int         typename_count;
-int         typename_top = -1;
+static const char **typenames;
+static int  typename_count;
+static int	typename_top = -1;
 
-char        chartype[128] =
+static char chartype[128] =
 {				/* this is used to facilitate the decision of
 				 * what type (alphanumeric, operator) each
 				 * character is */
