diff --git a/include/clang/Lex/PTHManager.h b/include/clang/Lex/PTHManager.h
index c9b7b52..e0c4776 100644
--- a/include/clang/Lex/PTHManager.h
+++ b/include/clang/Lex/PTHManager.h
@@ -38,7 +38,7 @@
   
   /// IdMap - A lazily generated cache mapping from persistent identifiers to
   ///  IdentifierInfo*.
-  void* PerIDCache;
+  IdentifierInfo** PerIDCache;
   
   /// FileLookup - Abstract data structure used for mapping between files
   ///  and token data in the PTH file.
@@ -59,7 +59,8 @@
   /// This constructor is intended to only be called by the static 'Create'
   /// method.
   PTHManager(const llvm::MemoryBuffer* buf, void* fileLookup,
-             const char* idDataTable, void* perIDCache, Preprocessor& pp);
+             const char* idDataTable, IdentifierInfo** perIDCache,
+             Preprocessor& pp);
 
   // Do not implement.
   PTHManager();
diff --git a/lib/Lex/PTHLexer.cpp b/lib/Lex/PTHLexer.cpp
index 9609930..a92d578 100644
--- a/lib/Lex/PTHLexer.cpp
+++ b/lib/Lex/PTHLexer.cpp
@@ -236,7 +236,7 @@
 //===----------------------------------------------------------------------===//
 
 PTHManager::PTHManager(const llvm::MemoryBuffer* buf, void* fileLookup,
-                       const char* idDataTable, void* perIDCache, 
+                       const char* idDataTable, IdentifierInfo** perIDCache, 
                        Preprocessor& pp)
 : Buf(buf), PerIDCache(perIDCache), FileLookup(fileLookup),
   IdDataTable(idDataTable), ITable(pp.getIdentifierTable()), PP(pp) {}
@@ -324,7 +324,7 @@
   --persistentID;
   
   // Check if the IdentifierInfo has already been resolved.
-  IdentifierInfo*& II = ((IdentifierInfo**) PerIDCache)[persistentID];
+  IdentifierInfo*& II = PerIDCache[persistentID];
   if (II) return II;
   
   // Look in the PTH file for the string data for the IdentifierInfo object.
