diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index ff0e2468e68b9f4a1fe6f89ca0cd51f9f21fa492..9eacd388860755104a234b2b9117f7f6f8281d6d 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,30 @@
+2006-10-16  Tobias Burnus  <burnus@net-b.de>
+
+	* m4/in_pack.m4: Fixed a typo.
+	* m4/iforeach.m4: Fixed a typo.
+	* m4/eoshift1.m4: Fixed a typo.
+	* m4/eoshift3.m4: Fixed a typo.
+	* m4/cshift1.m4: Fixed a typo.
+	* m4/in_unpack.m4: Fixed a typo.
+	* m4/reshape.m4: Fixed a typo.
+	* m4/ifunction.m4: Fixed a typo.
+	* runtime/environ.c: Fixed a typo.
+	* runtime/in_pack_generic.c: Fixed a typo.
+	* runtime/in_unpack_generic.c: Fixed a typo.
+	* runtime/memory.c: Fixed a typo.
+	* intrinsics/cshift0.c: Fixed a typo.
+	* intrinsics/cpu_time.c: Fixed a typo.
+	* intrinsics/pack_generic.c: Fixed a typo.
+	* intrinsics/unpack_generic.c: Fixed a typo.
+	* intrinsics/eoshift0.c: Fixed a typo.
+	* intrinsics/eoshift2.c: Fixed a typo.
+	* intrinsics/reshape_generic.c: Fixed a typo.
+	* io/open.c: Fixed a typo.
+	* io/list_read.c: Fixed a typo.
+	* io/io.h: Fixed a typo.
+	* io/transfer.c: Fixed a typo.
+	* io/write.c: Fixed a typo.
+
 2006-10-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
 
 	PR libgfortran/29277
diff --git a/libgfortran/intrinsics/cpu_time.c b/libgfortran/intrinsics/cpu_time.c
index baee1f45445a3e1cb04a31369aa34f18bd8df594..5e0dee2222652eb02e4fd48f14a2afd7bd2b68f7 100644
--- a/libgfortran/intrinsics/cpu_time.c
+++ b/libgfortran/intrinsics/cpu_time.c
@@ -86,7 +86,7 @@ Boston, MA 02110-1301, USA.  */
 static inline void __cpu_time_1 (long *, long *) ATTRIBUTE_ALWAYS_INLINE;
 
 /* Helper function for the actual implementation of the CPU_TIME
-   intrnsic.  Returns a CPU time in microseconds or -1 if no CPU time
+   intrinsic.  Returns a CPU time in microseconds or -1 if no CPU time
    could be computed.  */
 
 #ifdef __MINGW32__
diff --git a/libgfortran/intrinsics/cshift0.c b/libgfortran/intrinsics/cshift0.c
index 199e28314ce7458a1336441df50eb11b07457f0d..4df90ad0fbb544e6a11ee2ac14c5ec36d252848c 100644
--- a/libgfortran/intrinsics/cshift0.c
+++ b/libgfortran/intrinsics/cshift0.c
@@ -276,7 +276,7 @@ cshift0 (gfc_array_char * ret, const gfc_array_char * array,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           sptr -= sstride[n] * extent[n];
           n++;
diff --git a/libgfortran/intrinsics/eoshift0.c b/libgfortran/intrinsics/eoshift0.c
index 6f02f66d36e22076c013d9bbbb290f9184c17938..a8a891b25bf95e7e9c80025535b7462d25ea3cd7 100644
--- a/libgfortran/intrinsics/eoshift0.c
+++ b/libgfortran/intrinsics/eoshift0.c
@@ -189,7 +189,7 @@ eoshift0 (gfc_array_char * ret, const gfc_array_char * array,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           sptr -= sstride[n] * extent[n];
           n++;
diff --git a/libgfortran/intrinsics/eoshift2.c b/libgfortran/intrinsics/eoshift2.c
index f4990292ec4020189f0ee39684b15255708f819a..334d2741cf8e560efd21bd1c519738fe04b7fc6a 100644
--- a/libgfortran/intrinsics/eoshift2.c
+++ b/libgfortran/intrinsics/eoshift2.c
@@ -206,7 +206,7 @@ eoshift2 (gfc_array_char *ret, const gfc_array_char *array,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           sptr -= sstride[n] * extent[n];
           bptr -= bstride[n] * extent[n];
diff --git a/libgfortran/intrinsics/pack_generic.c b/libgfortran/intrinsics/pack_generic.c
index f07b5aac90553d4fb8969268c6af5393e0f73eb0..27a22ec8d54ff8cd621ce6db7dda61237ec8a1b7 100644
--- a/libgfortran/intrinsics/pack_generic.c
+++ b/libgfortran/intrinsics/pack_generic.c
@@ -41,7 +41,7 @@ Boston, MA 02110-1301, USA.  */
    Description: Pack an array into an array of rank one under the
    control of a mask.
 
-   Class: Transformational fucntion.
+   Class: Transformational function.
 
    Arguments:
       ARRAY   may be of any type. It shall not be scalar.
@@ -171,7 +171,7 @@ pack_internal (gfc_array_char *ret, const gfc_array_char *array,
 		     and increment the next dimension.  */
 		  count[n] = 0;
 		  /* We could precalculate this product, but this is a
-		     less frequently used path so proabably not worth
+		     less frequently used path so probably not worth
 		     it.  */
 		  m -= mstride[n] * extent[n];
 		  n++;
@@ -230,7 +230,7 @@ pack_internal (gfc_array_char *ret, const gfc_array_char *array,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           sptr -= sstride[n] * extent[n];
           mptr -= mstride[n] * extent[n];
           n++;
@@ -402,7 +402,7 @@ pack_s_internal (gfc_array_char *ret, const gfc_array_char *array,
 		 increment the next dimension.  */
 	      count[n] = 0;
 	      /* We could precalculate these products, but this is a
-		 less frequently used path so proabably not worth it.  */
+		 less frequently used path so probably not worth it.  */
 	      sptr -= sstride[n] * extent[n];
 	      n++;
 	      if (n >= dim)
diff --git a/libgfortran/intrinsics/reshape_generic.c b/libgfortran/intrinsics/reshape_generic.c
index 4f05416500fc68c1334b949af2a93992cd237a18..97860b66299e8ccbad8c8be6f6bfd5fc90a56a1e 100644
--- a/libgfortran/intrinsics/reshape_generic.c
+++ b/libgfortran/intrinsics/reshape_generic.c
@@ -190,7 +190,7 @@ reshape_internal (parray *ret, parray *source, shape_type *shape,
              the next dimension.  */
           rcount[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * rextent[n] * size;
           n++;
           if (n == rdim)
@@ -213,7 +213,7 @@ reshape_internal (parray *ret, parray *source, shape_type *shape,
              the next dimension.  */
           scount[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           src -= sstride[n] * sextent[n] * size;
           n++;
           if (n == sdim)
diff --git a/libgfortran/intrinsics/unpack_generic.c b/libgfortran/intrinsics/unpack_generic.c
index ac4394c21febb456239a6232c81f685ce70d7c7e..5cf96666df96457da0e1c4f6153718839b971e76 100644
--- a/libgfortran/intrinsics/unpack_generic.c
+++ b/libgfortran/intrinsics/unpack_generic.c
@@ -148,7 +148,7 @@ unpack_internal (gfc_array_char *ret, const gfc_array_char *vector,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           fptr -= fstride[n] * extent[n];
           mptr -= mstride[n] * extent[n];
diff --git a/libgfortran/io/io.h b/libgfortran/io/io.h
index 0bfc23d9e8c5e1e76d88e171570bd3314ceb86bc..ecc4a9de0ea7f6105af9f50d750913b394fbf170 100644
--- a/libgfortran/io/io.h
+++ b/libgfortran/io/io.h
@@ -108,7 +108,7 @@ array_loop_spec;
      or
       &GROUPNAME  OBJECT=value[s] [,OBJECT=value[s]]...&END
 
-   The object can be a fully qualified, compound name for an instrinsic
+   The object can be a fully qualified, compound name for an intrinsic
    type, derived types or derived type components.  So, a substring
    a(:)%b(4)%ch(2:4)(1:7) has to be treated correctly in namelist
    read. Hence full information about the structure of the object has
diff --git a/libgfortran/io/list_read.c b/libgfortran/io/list_read.c
index 47ceb4727de8e982e6a45b20192a65b4d754b944..cddfd76877f7637ee228cb14ec1410ef0c82b71f 100644
--- a/libgfortran/io/list_read.c
+++ b/libgfortran/io/list_read.c
@@ -2219,7 +2219,7 @@ nml_read_obj (st_parameter_dt *dtp, namelist_info * nl, index_type offset,
 	}
 
       /* If the expanded read warning flag is set, increment it,
-	 indicating that a single read has occured.  */
+	 indicating that a single read has occurred.  */
       if (dtp->u.p.expanded_read >= 1)
 	dtp->u.p.expanded_read++;
 
@@ -2298,7 +2298,7 @@ nml_get_obj_data (st_parameter_dt *dtp, namelist_info **pprev_nl,
       c = next_char (dtp);
       if (c != '?')
 	{
-	  st_sprintf (nml_err_msg, "namelist read: missplaced = sign");
+	  st_sprintf (nml_err_msg, "namelist read: misplaced = sign");
 	  goto nml_err_ret;
 	}
       nml_query (dtp, '=');
diff --git a/libgfortran/io/open.c b/libgfortran/io/open.c
index c75ee1a5afa787529f4790dffd923701c6cb30e2..24ce51a706411749dd5ea01be90d2acb76f7d6f6 100644
--- a/libgfortran/io/open.c
+++ b/libgfortran/io/open.c
@@ -178,7 +178,7 @@ edit_modes (st_parameter_open *opp, gfc_unit * u, unit_flags * flags)
 
       if (flags->pad != PAD_UNSPECIFIED)
 	generate_error (&opp->common, ERROR_OPTION_CONFLICT,
-			"PAD paramter conflicts with UNFORMATTED form in "
+			"PAD parameter conflicts with UNFORMATTED form in "
 			"OPEN statement");
     }
 
@@ -284,7 +284,7 @@ new_unit (st_parameter_open *opp, gfc_unit *u, unit_flags * flags)
       if (flags->form == FORM_UNFORMATTED)
 	{
 	  generate_error (&opp->common, ERROR_OPTION_CONFLICT,
-			  "PAD paramter conflicts with UNFORMATTED form in "
+			  "PAD parameter conflicts with UNFORMATTED form in "
 			  "OPEN statement");
 	  goto fail;
 	}
diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c
index b680d20c68497724d2f88d03fabbe521ec61cb3a..aacf4a33ded56c6635ca6e313e4c7b2633054655 100644
--- a/libgfortran/io/transfer.c
+++ b/libgfortran/io/transfer.c
@@ -738,7 +738,7 @@ require_type (st_parameter_dt *dtp, bt expected, bt actual, const fnode *f)
 /* This subroutine is the main loop for a formatted data transfer
    statement.  It would be natural to implement this as a coroutine
    with the user program, but C makes that awkward.  We loop,
-   processesing format elements.  When we actually have to transfer
+   processing format elements.  When we actually have to transfer
    data instead of just setting flags, we return control to the user
    program which calls a subroutine that supplies the address and type
    of the next element, then comes back here to process it.  */
diff --git a/libgfortran/io/write.c b/libgfortran/io/write.c
index 79018ccd4fadc7e57a3a5312d5e8db98ae160862..121d62907f376c9ad0c834416867d2263508b0c2 100644
--- a/libgfortran/io/write.c
+++ b/libgfortran/io/write.c
@@ -1,6 +1,6 @@
 /* Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
    Contributed by Andy Vaught
-   Namelist output contibuted by Paul Thomas
+   Namelist output contributed by Paul Thomas
 
 This file is part of the GNU Fortran 95 runtime library (libgfortran).
 
diff --git a/libgfortran/m4/cshift1.m4 b/libgfortran/m4/cshift1.m4
index 964689fa12d1d4313874353db48653a66b922156..68c2397f88686f7c89726bfaaac619d1937855c6 100644
--- a/libgfortran/m4/cshift1.m4
+++ b/libgfortran/m4/cshift1.m4
@@ -176,7 +176,7 @@ cshift1 (gfc_array_char * const restrict ret,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           sptr -= sstride[n] * extent[n];
 	  hptr -= hstride[n] * extent[n];
diff --git a/libgfortran/m4/eoshift1.m4 b/libgfortran/m4/eoshift1.m4
index 4d624cb049b49129db79647c7c9ccebba6a26a8d..0144fc11c68f70f5d1ca8a61734b6908e6aff29d 100644
--- a/libgfortran/m4/eoshift1.m4
+++ b/libgfortran/m4/eoshift1.m4
@@ -200,7 +200,7 @@ eoshift1 (gfc_array_char * const restrict ret,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           sptr -= sstride[n] * extent[n];
 	  hptr -= hstride[n] * extent[n];
diff --git a/libgfortran/m4/eoshift3.m4 b/libgfortran/m4/eoshift3.m4
index 269e13118721e9a9cfc42c7346588739d053a80d..7df08d2a785c6d7d720bbea4359c97205cfa8682 100644
--- a/libgfortran/m4/eoshift3.m4
+++ b/libgfortran/m4/eoshift3.m4
@@ -216,7 +216,7 @@ eoshift3 (gfc_array_char * const restrict ret,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * extent[n];
           sptr -= sstride[n] * extent[n];
 	  hptr -= hstride[n] * extent[n];
diff --git a/libgfortran/m4/iforeach.m4 b/libgfortran/m4/iforeach.m4
index 6ff9427722e36e6800583c241219111a2974a557..af53cef7ecc5fbb3942c1fd5d672eb6230ce4019 100644
--- a/libgfortran/m4/iforeach.m4
+++ b/libgfortran/m4/iforeach.m4
@@ -85,7 +85,7 @@ define(FINISH_FOREACH_FUNCTION,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           base -= sstride[n] * extent[n];
           n++;
           if (n == rank)
@@ -197,7 +197,7 @@ define(FINISH_MASKED_FOREACH_FUNCTION,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           base -= sstride[n] * extent[n];
           mbase -= mstride[n] * extent[n];
           n++;
diff --git a/libgfortran/m4/ifunction.m4 b/libgfortran/m4/ifunction.m4
index 74ae6a5d5e4784c87e53865c971e07770b150736..d2f2a80c4232e2a9a928a5593117992ca64d3d9c 100644
--- a/libgfortran/m4/ifunction.m4
+++ b/libgfortran/m4/ifunction.m4
@@ -126,7 +126,7 @@ define(FINISH_ARRAY_FUNCTION,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           base -= sstride[n] * extent[n];
           dest -= dstride[n] * extent[n];
           n++;
@@ -277,7 +277,7 @@ define(FINISH_MASKED_ARRAY_FUNCTION,
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           base -= sstride[n] * extent[n];
           mbase -= mstride[n] * extent[n];
           dest -= dstride[n] * extent[n];
diff --git a/libgfortran/m4/in_pack.m4 b/libgfortran/m4/in_pack.m4
index 950919d07828a27371609d5aacf1417650823195..81205075198ff2930e19f19c432037f83f554709 100644
--- a/libgfortran/m4/in_pack.m4
+++ b/libgfortran/m4/in_pack.m4
@@ -105,7 +105,7 @@ rtype_name *
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           src -= stride[n] * extent[n];
           n++;
           if (n == dim)
diff --git a/libgfortran/m4/in_unpack.m4 b/libgfortran/m4/in_unpack.m4
index d6ee7c6f7381fac96e5db8fe823492fa17028950..d0438f71e0731f6e6768900bbd7f5f804fb7e94a 100644
--- a/libgfortran/m4/in_unpack.m4
+++ b/libgfortran/m4/in_unpack.m4
@@ -94,7 +94,7 @@ void
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           dest -= stride[n] * extent[n];
           n++;
           if (n == dim)
diff --git a/libgfortran/m4/reshape.m4 b/libgfortran/m4/reshape.m4
index 569b413028c017ce7c2d31d4333fa82de4c4ba87..ed594fbfa6884ce5389f59c8102aadaadda4ae21 100644
--- a/libgfortran/m4/reshape.m4
+++ b/libgfortran/m4/reshape.m4
@@ -202,7 +202,7 @@ reshape_`'rtype_ccode (rtype * const restrict ret,
              the next dimension.  */
           rcount[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           rptr -= rstride[n] * rextent[n];
           n++;
           if (n == rdim)
@@ -225,7 +225,7 @@ reshape_`'rtype_ccode (rtype * const restrict ret,
              the next dimension.  */
           scount[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           src -= sstride[n] * sextent[n];
           n++;
           if (n == sdim)
diff --git a/libgfortran/runtime/environ.c b/libgfortran/runtime/environ.c
index c519f0845737f3260fb28edd8b4d635ff107ad14..555b4482c6991f7b2c5ed5333ce7d75391b99224 100644
--- a/libgfortran/runtime/environ.c
+++ b/libgfortran/runtime/environ.c
@@ -503,7 +503,7 @@ static variable variable_table[] = {
    stringize (DEFAULT_RECL), 0},
 
   {"GFORTRAN_LIST_SEPARATOR", 0, NULL, init_sep, show_sep,
-   "Separatator to use when writing list output.  May contain any number of "
+   "Separator to use when writing list output.  May contain any number of "
    "spaces\nand at most one comma.  Default is a single space.", 0},
 
   /* Memory related controls */
@@ -855,7 +855,7 @@ mark_range (int unit1, int unit2)
 
 /* Parse the GFORTRAN_CONVERT_UNITS variable.  This is called
    twice, once to count the units and once to actually mark them in
-   the table.  When counting, we don't check for double occurences
+   the table.  When counting, we don't check for double occurrences
    of units.  */
 
 static int
diff --git a/libgfortran/runtime/in_pack_generic.c b/libgfortran/runtime/in_pack_generic.c
index 1536db17d283b19a2a65843c5f2caf4018afd3f1..7f02b97bff9adf5465f389810d4025b1b712ea15 100644
--- a/libgfortran/runtime/in_pack_generic.c
+++ b/libgfortran/runtime/in_pack_generic.c
@@ -138,7 +138,7 @@ internal_pack (gfc_array_char * source)
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           src -= stride[n] * extent[n] * size;
           n++;
           if (n == dim)
diff --git a/libgfortran/runtime/in_unpack_generic.c b/libgfortran/runtime/in_unpack_generic.c
index 8ca0fa5349224d7c01518519817114a6abb908f4..7c14355b80907b89dfdda030c74216fa5d829f5b 100644
--- a/libgfortran/runtime/in_unpack_generic.c
+++ b/libgfortran/runtime/in_unpack_generic.c
@@ -136,7 +136,7 @@ internal_unpack (gfc_array_char * d, const void * s)
              the next dimension.  */
           count[n] = 0;
           /* We could precalculate these products, but this is a less
-             frequently used path so proabably not worth it.  */
+             frequently used path so probably not worth it.  */
           dest -= stride[n] * extent[n] * size;
           n++;
           if (n == dim)
diff --git a/libgfortran/runtime/memory.c b/libgfortran/runtime/memory.c
index db55a552168e322dd1134016f5be90b6f9012514..43a72e3f1b2cd0bf5ffdfb1d3d33b8137f6d0328 100644
--- a/libgfortran/runtime/memory.c
+++ b/libgfortran/runtime/memory.c
@@ -1,4 +1,4 @@
-/* Memory mamagement routines.
+/* Memory management routines.
    Copyright 2002, 2005, 2006 Free Software Foundation, Inc.
    Contributed by Paul Brook <paul@nowt.org>