Fixes a slew of compiler warnings and turns on "warning as error" in the scons build.
diff --git a/src/gmock-internal-utils.cc b/src/gmock-internal-utils.cc
index 196ec74..4c51ec0 100644
--- a/src/gmock-internal-utils.cc
+++ b/src/gmock-internal-utils.cc
@@ -64,7 +64,7 @@
     if (isalnum(*p)) {
       if (starts_new_word && result != "")
         result += ' ';
-      result += tolower(*p);
+      result += static_cast<char>(tolower(*p));
     }
   }
   return result;
diff --git a/src/gmock-spec-builders.cc b/src/gmock-spec-builders.cc
index edd60fe..02a3227 100644
--- a/src/gmock-spec-builders.cc
+++ b/src/gmock-spec-builders.cc
@@ -56,12 +56,12 @@
 Mutex g_gmock_mutex(Mutex::NO_CONSTRUCTOR_NEEDED_FOR_STATIC_MUTEX);
 
 // Constructs an ExpectationBase object.
-ExpectationBase::ExpectationBase(const char* file,
-                                 int line,
-                                 const string& source_text)
-    : file_(file),
-      line_(line),
-      source_text_(source_text),
+ExpectationBase::ExpectationBase(const char* a_file,
+                                 int a_line,
+                                 const string& a_source_text)
+    : file_(a_file),
+      line_(a_line),
+      source_text_(a_source_text),
       cardinality_specified_(false),
       cardinality_(Exactly(1)),
       call_count_(0),
@@ -73,9 +73,9 @@
 
 // Explicitly specifies the cardinality of this expectation.  Used by
 // the subclasses to implement the .Times() clause.
-void ExpectationBase::SpecifyCardinality(const Cardinality& cardinality) {
+void ExpectationBase::SpecifyCardinality(const Cardinality& a_cardinality) {
   cardinality_specified_ = true;
-  cardinality_ = cardinality;
+  cardinality_ = a_cardinality;
 }
 
 // Retires all pre-requisites of this expectation.
@@ -427,8 +427,8 @@
 Expectation::Expectation() {}
 
 Expectation::Expectation(
-    const internal::linked_ptr<internal::ExpectationBase>& expectation_base)
-    : expectation_base_(expectation_base) {}
+    const internal::linked_ptr<internal::ExpectationBase>& an_expectation_base)
+    : expectation_base_(an_expectation_base) {}
 
 Expectation::~Expectation() {}