diff --git a/llvm/lib/Object/MachOObjectFile.cpp b/llvm/lib/Object/MachOObjectFile.cpp
index f3367a7..fbdc0a6 100644
--- a/llvm/lib/Object/MachOObjectFile.cpp
+++ b/llvm/lib/Object/MachOObjectFile.cpp
@@ -1542,15 +1542,15 @@
   return true;  
 }
 
-uint64_t ExportEntry::readULEB128(const uint8_t *&p) {
-  unsigned count;
-  uint64_t result = decodeULEB128(p, &count);
-  p += count;
-  if (p > Trie.end()) {
-    p = Trie.end();
+uint64_t ExportEntry::readULEB128(const uint8_t *&Ptr) {
+  unsigned Count;
+  uint64_t Result = decodeULEB128(Ptr, &Count);
+  Ptr += Count;
+  if (Ptr > Trie.end()) {
+    Ptr = Trie.end();
     Malformed = true;
   }
-  return result;
+  return Result;
 }
 
 StringRef ExportEntry::name() const {
@@ -1616,8 +1616,8 @@
     NodeState &Top = Stack.back();
     CumulativeString.resize(Top.ParentStringLength);
     for (;*Top.Current != 0; Top.Current++) {
-      char c = *Top.Current;
-      CumulativeString.push_back(c);
+      char C = *Top.Current;
+      CumulativeString.push_back(C);
     }
     Top.Current += 1;
     uint64_t childNodeIndex = readULEB128(Top.Current);
