/// with @compatibility_alias, so that we can emit errors on duplicates and
/// find the declarations when needed. This construct is ancient and will
/// likely never be seen. Nevertheless, it is here for compatibility.
- typedef llvm::DenseMap<IdentifierInfo*, ObjCCompatibleAliasDecl*> ObjCAliasTy;
+ typedef llvm::DenseMap<const IdentifierInfo*,
+ ObjCCompatibleAliasDecl*> ObjCAliasTy;
ObjCAliasTy ObjCAliasDecls;
// Enum values used by KnownFunctionIDs (see below).
if (getLangOptions().ObjC1) {
// @interface and @compatibility_alias result in new type references.
// Creating a class alias is *extremely* rare.
- ObjCAliasTy::const_iterator I = ObjCAliasDecls.find((IdentifierInfo*)&II);
+ ObjCAliasTy::const_iterator I = ObjCAliasDecls.find(&II);
if (I != ObjCAliasDecls.end())
return I->second->getClassInterface();
}
if (getLangOptions().ObjC1) {
// @interface and @compatibility_alias introduce typedef-like names.
// Unlike typedef's, they can only be introduced at file-scope (and are
- // not therefore not scoped decls). They can, however, be shadowed by
+ // therefore not scoped decls). They can, however, be shadowed by
// other names in IDNS_Ordinary.
ObjCAliasTy::iterator I = ObjCAliasDecls.find(II);
if (I != ObjCAliasDecls.end())