diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6f56f3b..5110d26 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -112,7 +112,7 @@
   OPTION(MSVC_USE_STATIC_CRT
     "MS Visual Studio: Use static C-Run Time Library in place of shared." OFF)
 
-  IF ( BUILD_TESTING AND BUILD_SHARED_LIBS)
+  IF (BUILD_TESTING AND BUILD_SHARED_LIBS)
     MESSAGE(
       "-- Disabling tests. The flags BUILD_TESTING and BUILD_SHARED_LIBS"
       " are incompatible with MSVC."
diff --git a/docs/source/version_history.rst b/docs/source/version_history.rst
index 78a04ac..195ca75 100644
--- a/docs/source/version_history.rst
+++ b/docs/source/version_history.rst
@@ -27,12 +27,12 @@
    (Alex Stewart)
 #. LBFGS is faster due to fewer memory copies.
 #. Parameter blocks are not restricted to be less than 32k in size,
-   they can be upto 2G in size.
+   they can be up to 2G in size.
 #. Faster ``SPARSE_NORMAL_CHOLESKY`` solver when using ``CX_SPARSE``
    as the sparse linear algebra library.
 #. ``Problem::IsParameterBlockPresent`` can be used to check if a
    parameter block is already present in the problem.
-#. ``Problem::GetParameterzation`` can be used to access the
+#. ``Problem::GetParameterization`` can be used to access the
    parameterization associated with a parameter block.
 #. Added the (2,4,9) template specialization for PartitionedMatrixView
    and SchurEliminator.
@@ -98,7 +98,7 @@
    column blocks. (Richard Bowen)
 #. Better error checking when ``Problem::RemoveResidualBlock`` is
    called. (Alex Stewart)
-#. Fixed a memory leack in ``SchurComplementSolver``.
+#. Fixed a memory leak in ``SchurComplementSolver``.
 #. Added ``epsilon()`` method to ``NumTraits<ceres::Jet<T, N> >``. (Filippo
    Basso)
 #. Fixed a bug in `CompressedRowSparseMatrix::AppendRows`` and
diff --git a/include/ceres/types.h b/include/ceres/types.h
index 5784d50..ff31d45 100644
--- a/include/ceres/types.h
+++ b/include/ceres/types.h
@@ -378,9 +378,9 @@
   TEXTFILE
 };
 
-// For SizedCostFunction and AutoDiffCostFunction, DYNAMIC can be specified for
-// the number of residuals. If specified, then the number of residuas for that
-// cost function can vary at runtime.
+// For SizedCostFunction and AutoDiffCostFunction, DYNAMIC can be
+// specified for the number of residuals. If specified, then the
+// number of residuas for that cost function can vary at runtime.
 enum DimensionType {
   DYNAMIC = -1
 };
@@ -402,13 +402,17 @@
   SPARSE_QR
 };
 
-CERES_EXPORT const char* LinearSolverTypeToString(LinearSolverType type);
-CERES_EXPORT bool StringToLinearSolverType(string value, LinearSolverType* type);
+CERES_EXPORT const char* LinearSolverTypeToString(
+    LinearSolverType type);
+CERES_EXPORT bool StringToLinearSolverType(string value,
+                                           LinearSolverType* type);
 
 CERES_EXPORT const char* PreconditionerTypeToString(PreconditionerType type);
-CERES_EXPORT bool StringToPreconditionerType(string value, PreconditionerType* type);
+CERES_EXPORT bool StringToPreconditionerType(string value,
+                                             PreconditionerType* type);
 
-CERES_EXPORT const char* VisibilityClusteringTypeToString(VisibilityClusteringType type);
+CERES_EXPORT const char* VisibilityClusteringTypeToString(
+    VisibilityClusteringType type);
 CERES_EXPORT bool StringToVisibilityClusteringType(string value,
                                       VisibilityClusteringType* type);
 
@@ -424,7 +428,8 @@
     string value,
     DenseLinearAlgebraLibraryType* type);
 
-CERES_EXPORT const char* TrustRegionStrategyTypeToString(TrustRegionStrategyType type);
+CERES_EXPORT const char* TrustRegionStrategyTypeToString(
+    TrustRegionStrategyType type);
 CERES_EXPORT bool StringToTrustRegionStrategyType(string value,
                                      TrustRegionStrategyType* type);
 
@@ -434,7 +439,8 @@
 CERES_EXPORT const char* MinimizerTypeToString(MinimizerType type);
 CERES_EXPORT bool StringToMinimizerType(string value, MinimizerType* type);
 
-CERES_EXPORT const char* LineSearchDirectionTypeToString(LineSearchDirectionType type);
+CERES_EXPORT const char* LineSearchDirectionTypeToString(
+    LineSearchDirectionType type);
 CERES_EXPORT bool StringToLineSearchDirectionType(string value,
                                      LineSearchDirectionType* type);
 
