diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
index 5643a65..04b07cc 100644
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -3331,7 +3331,7 @@
     /* XXX XXX This would allow to pass additional options.  For COM
        method *implementations*, we would probably want different
        behaviour than in 'normal' callback functions: return a HRESULT if
-       an exception occurrs in the callback, and print the traceback not
+       an exception occurs in the callback, and print the traceback not
        only on the console, but also to OutputDebugString() or something
        like that.
     */
diff --git a/Modules/_ctypes/callbacks.c b/Modules/_ctypes/callbacks.c
index 5c82f77..490ada6 100644
--- a/Modules/_ctypes/callbacks.c
+++ b/Modules/_ctypes/callbacks.c
@@ -234,7 +234,7 @@
             /* XXX XXX XX
                We have the problem that c_byte or c_short have dict->size of
                1 resp. 4, but these parameters are pushed as sizeof(int) bytes.
-               BTW, the same problem occurrs when they are pushed as parameters
+               BTW, the same problem occurs when they are pushed as parameters
             */
         } else if (dict) {
             /* Hm, shouldn't we use PyCData_AtAddress() or something like that instead? */
diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c
index d185fda..41a90f6 100644
--- a/Modules/_ctypes/callproc.c
+++ b/Modules/_ctypes/callproc.c
@@ -29,7 +29,7 @@
 
   4. _ctypes_callproc is then called with the 'callargs' tuple.  _ctypes_callproc first
   allocates two arrays.  The first is an array of 'struct argument' items, the
-  second array has 'void *' entried.
+  second array has 'void *' entries.
 
   5. If 'converters' are present (converters is a sequence of argtypes'
   from_param methods), for each item in 'callargs' converter is called and the
diff --git a/Modules/_functoolsmodule.c b/Modules/_functoolsmodule.c
index 3437353..9aaa0f3 100644
--- a/Modules/_functoolsmodule.c
+++ b/Modules/_functoolsmodule.c
@@ -200,7 +200,7 @@
    __reduce__ by itself doesn't support getting kwargs in the unpickle
    operation so we define a __setstate__ that replaces all the information
    about the partial.  If we only replaced part of it someone would use
-   it as a hook to do stange things.
+   it as a hook to do strange things.
  */
 
 static PyObject *
diff --git a/Modules/_io/iobase.c b/Modules/_io/iobase.c
index dfc1a3a..84b560a 100644
--- a/Modules/_io/iobase.c
+++ b/Modules/_io/iobase.c
@@ -49,7 +49,7 @@
     "stream.\n"
     "\n"
     "IOBase also supports the :keyword:`with` statement. In this example,\n"
-    "fp is closed after the suite of the with statment is complete:\n"
+    "fp is closed after the suite of the with statement is complete:\n"
     "\n"
     "with open('spam.txt', 'r') as fp:\n"
     "    fp.write('Spam and eggs!')\n");
diff --git a/Modules/_io/stringio.c b/Modules/_io/stringio.c
index 7e3730a..8d83f73 100644
--- a/Modules/_io/stringio.c
+++ b/Modules/_io/stringio.c
@@ -157,7 +157,7 @@
           0   lo      string_size                           hi
           |   |<---used--->|<----------available----------->|
           |   |            <--to pad-->|<---to write--->    |
-          0   buf                   positon
+          0   buf                   position
 
         */
         memset(self->buf + self->string_size, '\0',
diff --git a/Modules/_pickle.c b/Modules/_pickle.c
index 4eb74ff..5102e24 100644
--- a/Modules/_pickle.c
+++ b/Modules/_pickle.c
@@ -4874,7 +4874,7 @@
         goto error;
     if (!PyDict_CheckExact(name_mapping_3to2)) {
         PyErr_Format(PyExc_RuntimeError,
-                     "_compat_pickle.REVERSE_NAME_MAPPING shouldbe a dict, "
+                     "_compat_pickle.REVERSE_NAME_MAPPING should be a dict, "
                      "not %.200s", Py_TYPE(name_mapping_3to2)->tp_name);
         goto error;
     }
diff --git a/Modules/_sqlite/connection.h b/Modules/_sqlite/connection.h
index af414a0..fe05297 100644
--- a/Modules/_sqlite/connection.h
+++ b/Modules/_sqlite/connection.h
@@ -55,7 +55,7 @@
     /* None for autocommit, otherwise a PyString with the isolation level */
     PyObject* isolation_level;
 
-    /* NULL for autocommit, otherwise a string with the BEGIN statment; will be
+    /* NULL for autocommit, otherwise a string with the BEGIN statement; will be
      * freed in connection destructor */
     char* begin_statement;
 
diff --git a/Modules/cmathmodule.c b/Modules/cmathmodule.c
index 545e834..592b4ea 100644
--- a/Modules/cmathmodule.c
+++ b/Modules/cmathmodule.c
@@ -22,7 +22,7 @@
 /*
    CM_LARGE_DOUBLE is used to avoid spurious overflow in the sqrt, log,
    inverse trig and inverse hyperbolic trig functions.  Its log is used in the
-   evaluation of exp, cos, cosh, sin, sinh, tan, and tanh to avoid unecessary
+   evaluation of exp, cos, cosh, sin, sinh, tan, and tanh to avoid unnecessary
    overflow.
  */
 
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 9bdca0c..b04d246 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -2151,7 +2151,7 @@
  * This is the guts of the recv() and recv_into() methods, which reads into a
  * char buffer.  If you have any inc/dec ref to do to the objects that contain
  * the buffer, do it in the caller.  This function returns the number of bytes
- * succesfully read.  If there was an error, it returns -1.  Note that it is
+ * successfully read.  If there was an error, it returns -1.  Note that it is
  * also possible that we return a number of bytes smaller than the request
  * bytes.
  */
@@ -2350,7 +2350,7 @@
  * This is the guts of the recvfrom() and recvfrom_into() methods, which reads
  * into a char buffer.  If you have any inc/def ref to do to the objects that
  * contain the buffer, do it in the caller.  This function returns the number
- * of bytes succesfully read.  If there was an error, it returns -1.  Note
+ * of bytes successfully read.  If there was an error, it returns -1.  Note
  * that it is also possible that we return a number of bytes smaller than the
  * request bytes.
  *
@@ -2443,9 +2443,9 @@
 
     if (outlen != recvlen) {
         /* We did not read as many bytes as we anticipated, resize the
-           string if possible and be succesful. */
+           string if possible and be successful. */
         if (_PyBytes_Resize(&buf, outlen) < 0)
-            /* Oopsy, not so succesful after all. */
+            /* Oopsy, not so successful after all. */
             goto finally;
     }
 
@@ -4162,7 +4162,7 @@
 
     return 0;  /* Failure */
 #else
-    /* No need to initialise sockets with GCC/EMX */
+    /* No need to initialize sockets with GCC/EMX */
     return 1; /* Success */
 #endif
 }
@@ -4195,7 +4195,7 @@
    "socket.py" which implements some additional functionality.
    The import of "_socket" may fail with an ImportError exception if
    os-specific initialization fails.  On Windows, this does WINSOCK
-   initialization.  When WINSOCK is initialized succesfully, a call to
+   initialization.  When WINSOCK is initialized successfully, a call to
    WSACleanup() is scheduled to be made at exit time.
 */
 
diff --git a/Modules/timemodule.c b/Modules/timemodule.c
index 8c40d21..a24728a 100644
--- a/Modules/timemodule.c
+++ b/Modules/timemodule.c
@@ -706,7 +706,7 @@
     buf.tm_wday = -1;  /* sentinel; original value ignored */
     tt = mktime(&buf);
     /* Return value of -1 does not necessarily mean an error, but tm_wday
-     * cannot remain set to -1 if mktime succedded. */
+     * cannot remain set to -1 if mktime succeeded. */
     if (tt == (time_t)(-1) && buf.tm_wday == -1) {
         PyErr_SetString(PyExc_OverflowError,
                         "mktime argument out of range");
diff --git a/Modules/zipimport.c b/Modules/zipimport.c
index d3ca28d..fb5f42b 100644
--- a/Modules/zipimport.c
+++ b/Modules/zipimport.c
@@ -1049,7 +1049,7 @@
 }
 
 /* Given a path to a .pyc or .pyo file in the archive, return the
-   modifictaion time of the matching .py file, or 0 if no source
+   modification time of the matching .py file, or 0 if no source
    is available. */
 static time_t
 get_mtime_of_source(ZipImporter *self, char *path)
diff --git a/Modules/zlib/deflate.h b/Modules/zlib/deflate.h
index 05a5ab3..b16f7a7 100644
--- a/Modules/zlib/deflate.h
+++ b/Modules/zlib/deflate.h
@@ -188,7 +188,7 @@
     int nice_match; /* Stop searching when current match exceeds this */
 
                 /* used by trees.c: */
-    /* Didn't use ct_data typedef below to supress compiler warning */
+    /* Didn't use ct_data typedef below to suppress compiler warning */
     struct ct_data_s dyn_ltree[HEAP_SIZE];   /* literal and length tree */
     struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */
     struct ct_data_s bl_tree[2*BL_CODES+1];  /* Huffman tree for bit lengths */
diff --git a/Modules/zlib/gzio.c b/Modules/zlib/gzio.c
index 7e90f49..5cf50e0 100644
--- a/Modules/zlib/gzio.c
+++ b/Modules/zlib/gzio.c
@@ -256,7 +256,7 @@
 /* ===========================================================================
      Read a byte from a gz_stream; update next_in and avail_in. Return EOF
    for end of file.
-   IN assertion: the stream s has been sucessfully opened for reading.
+   IN assertion: the stream s has been successfully opened for reading.
 */
 local int get_byte(s)
     gz_stream *s;
@@ -281,7 +281,7 @@
     mode to transparent if the gzip magic header is not present; set s->err
     to Z_DATA_ERROR if the magic header is present but the rest of the header
     is incorrect.
-    IN assertion: the stream s has already been created sucessfully;
+    IN assertion: the stream s has already been created successfully;
        s->stream.avail_in is zero for the first time, but may be non-zero
        for concatenated .gz files.
 */
