diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c
index 67700de..4d13e45 100644
--- a/Modules/_collectionsmodule.c
+++ b/Modules/_collectionsmodule.c
@@ -85,7 +85,7 @@
 	return b;
 }
 
-void
+static void
 freeblock(block *b)
 {
 	if (numfreeblocks < MAXFREEBLOCKS) {
@@ -957,7 +957,7 @@
 	int counter;    /* number of items remaining for iteration */
 } dequeiterobject;
 
-PyTypeObject dequeiter_type;
+static PyTypeObject dequeiter_type;
 
 static PyObject *
 deque_iter(dequeobject *deque)
@@ -1024,7 +1024,7 @@
  	{NULL,		NULL}		/* sentinel */
 };
 
-PyTypeObject dequeiter_type = {
+static PyTypeObject dequeiter_type = {
 	PyVarObject_HEAD_INIT(NULL, 0)
 	"deque_iterator",			/* tp_name */
 	sizeof(dequeiterobject),		/* tp_basicsize */
@@ -1059,7 +1059,7 @@
 
 /*********************** Deque Reverse Iterator **************************/
 
-PyTypeObject dequereviter_type;
+static PyTypeObject dequereviter_type;
 
 static PyObject *
 deque_reviter(dequeobject *deque)
@@ -1106,7 +1106,7 @@
 	return item;
 }
 
-PyTypeObject dequereviter_type = {
+static PyTypeObject dequereviter_type = {
 	PyVarObject_HEAD_INIT(NULL, 0)
 	"deque_reverse_iterator",		/* tp_name */
 	sizeof(dequeiterobject),		/* tp_basicsize */
diff --git a/Modules/_localemodule.c b/Modules/_localemodule.c
index 02e9e53..09e04ef 100644
--- a/Modules/_localemodule.c
+++ b/Modules/_localemodule.c
@@ -444,7 +444,7 @@
 
 #ifdef HAVE_LANGINFO_H
 #define LANGINFO(X) {#X, X}
-struct langinfo_constant{
+static struct langinfo_constant{
 	char* name;
 	int value;
 } langinfo_constants[] = 
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index 4308773..f101450 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -490,7 +490,7 @@
    lists. SplitObj walks through a nested tuple, finding string objects that
    need to be split. */
 
-PyObject *
+static PyObject *
 SplitObj(PyObject *arg)
 {
 	if (PyTuple_Check(arg)) {
@@ -1523,7 +1523,7 @@
 	return 0;
 }	
 
-void
+static void
 var_perform(VarEvent *ev)
 {
 	*(ev->res) = ev->func(ev->self, ev->args, ev->flags);
diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c
index 5d10001..99d25d3 100644
--- a/Modules/arraymodule.c
+++ b/Modules/arraymodule.c
@@ -1546,7 +1546,7 @@
 	{NULL}
 };
 
-PyMethodDef array_methods[] = {
+static PyMethodDef array_methods[] = {
 	{"append",	(PyCFunction)array_append,	METH_O,
 	 append_doc},
 	{"buffer_info", (PyCFunction)array_buffer_info, METH_NOARGS,
diff --git a/Modules/unicodedata_db.h b/Modules/unicodedata_db.h
index d68466a..f56e446 100644
--- a/Modules/unicodedata_db.h
+++ b/Modules/unicodedata_db.h
@@ -228,7 +228,7 @@
 #define TOTAL_FIRST 356
 #define TOTAL_LAST 53
 struct reindex{int start;short count,index;};
-struct reindex nfc_first[] = {
+static struct reindex nfc_first[] = {
   { 60, 2, 0},
   { 65, 15, 3},
   { 82, 8, 19},
@@ -425,7 +425,7 @@
   {0,0,0}
 };
 
-struct reindex nfc_last[] = {
+static struct reindex nfc_last[] = {
   { 768, 4, 0},
   { 774, 6, 5},
   { 783, 0, 12},
