This patch tries to remove all the direct use of DeclID except the real low level reading and writing. All the use of DeclID is converted to the use of LocalDeclID or GlobalDeclID. This is helpful to increase the readability and type safety.
PreprocessorOptions
InclusionDirective()
SourceManager::getFileEntryRefForID()
= delete("should have a reason");
FileEntryRef
FileManager::getCanonicalName()