diff --git a/libbb/bb_pwd.c b/libbb/bb_pwd.c
index 7d7600c..68721dd 100644
--- a/libbb/bb_pwd.c
+++ b/libbb/bb_pwd.c
@@ -154,7 +154,7 @@
 #include <stdlib.h>
 #include "libbb.h"
 
-extern unsigned long get_ug_id(const char *s,
+unsigned long get_ug_id(const char *s,
 		long (*__bb_getxxnam)(const char *))
 {
 	unsigned long r;
diff --git a/libbb/compare_string_array.c b/libbb/compare_string_array.c
index e4191e3..529d294 100644
--- a/libbb/compare_string_array.c
+++ b/libbb/compare_string_array.c
@@ -17,8 +17,7 @@
 #include <string.h>
 
 /* returns the array number of the string */
-extern int
-compare_string_array(const char * const string_array[], const char *key)
+int compare_string_array(const char * const string_array[], const char *key)
 {
 	int i;
 
diff --git a/libbb/parse_number.c b/libbb/parse_number.c
index 5262239..ffff666 100644
--- a/libbb/parse_number.c
+++ b/libbb/parse_number.c
@@ -27,7 +27,6 @@
 #include <assert.h>
 #include "libbb.h"
 
-extern
 unsigned long bb_xparse_number(const char *numstr,
 							   const struct suffix_mult *suffixes)
 {
diff --git a/libbb/printf.c b/libbb/printf.c
index 7eb60a9..2e79555 100644
--- a/libbb/printf.c
+++ b/libbb/printf.c
@@ -38,7 +38,7 @@
 #include "libbb.h"
 
 #ifdef L_bb_vfprintf
-extern int bb_vfprintf(FILE * __restrict stream,
+int bb_vfprintf(FILE * __restrict stream,
 					   const char * __restrict format,
 					   va_list arg)
 {
@@ -75,7 +75,7 @@
 #endif
 
 #ifdef L_bb_fprintf
-extern int bb_fprintf(FILE * __restrict stream,
+int bb_fprintf(FILE * __restrict stream,
 					  const char * __restrict format, ...)
 {
 	va_list arg;
diff --git a/libbb/safe_strtol.c b/libbb/safe_strtol.c
index fcbdba8..17ddbbd 100644
--- a/libbb/safe_strtol.c
+++ b/libbb/safe_strtol.c
@@ -25,7 +25,6 @@
 #include "libbb.h"
 
 #ifdef L_safe_strtoi
-extern
 int safe_strtoi(char *arg, int* value)
 {
 	int error;
@@ -37,7 +36,6 @@
 #endif
 
 #ifdef L_safe_strtod
-extern
 int safe_strtod(char *arg, double* value)
 {
 	char *endptr;
@@ -55,7 +53,6 @@
 #endif
 
 #ifdef L_safe_strtol
-extern
 int safe_strtol(char *arg, long* value)
 {
 	char *endptr;
@@ -73,7 +70,6 @@
 #endif
 
 #ifdef L_safe_strtoul
-extern
 int safe_strtoul(char *arg, unsigned long* value)
 {
 	char *endptr;
diff --git a/libbb/xgetularg.c b/libbb/xgetularg.c
index 8d793f3..44b8a1d 100644
--- a/libbb/xgetularg.c
+++ b/libbb/xgetularg.c
@@ -29,7 +29,6 @@
 #include "libbb.h"
 
 #ifdef L_xgetularg_bnd_sfx
-extern
 unsigned long bb_xgetularg_bnd_sfx(const char *arg, int base,
 								   unsigned long lower,
 								   unsigned long upper,
@@ -92,7 +91,6 @@
 #endif
 
 #ifdef L_xgetlarg_bnd_sfx
-extern
 long bb_xgetlarg_bnd_sfx(const char *arg, int base,
 						 long lower,
 						 long upper,
@@ -124,7 +122,6 @@
 #endif
 
 #ifdef L_getlarg10_sfx
-extern
 long bb_xgetlarg10_sfx(const char *arg, const struct suffix_mult *suffixes)
 {
 	return bb_xgetlarg_bnd_sfx(arg, 10, LONG_MIN, LONG_MAX, suffixes);
@@ -132,7 +129,6 @@
 #endif
 
 #ifdef L_xgetularg_bnd
-extern
 unsigned long bb_xgetularg_bnd(const char *arg, int base,
 							   unsigned long lower,
 							   unsigned long upper)
@@ -142,7 +138,6 @@
 #endif
 
 #ifdef L_xgetularg10_bnd
-extern
 unsigned long bb_xgetularg10_bnd(const char *arg,
 								 unsigned long lower,
 								 unsigned long upper)
@@ -152,7 +147,6 @@
 #endif
 
 #ifdef L_xgetularg10
-extern
 unsigned long bb_xgetularg10(const char *arg)
 {
 	return bb_xgetularg10_bnd(arg, 0, ULONG_MAX);
