From: Fariborz Jahanian Date: Sat, 10 Nov 2007 22:00:55 +0000 (+0000) Subject: Fixed a bug which exposed the internally built type to user code. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8f2c735c0cee8da42742ae247778cbfef45b8750;p=clang Fixed a bug which exposed the internally built type to user code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43987 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/Sema/SemaDecl.cpp b/Sema/SemaDecl.cpp index 7ba743cf5e..006bb18bd1 100644 --- a/Sema/SemaDecl.cpp +++ b/Sema/SemaDecl.cpp @@ -551,8 +551,13 @@ Sema::ObjcActOnMethodDefinition(Scope *S, DeclTy *D, DeclTy *lastDecl) { ObjcMethodDecl *MDecl = dyn_cast(static_cast(D)); ScopedDecl *LastDeclarator = dyn_cast_or_null((Decl *)lastDecl); - const char *name = MDecl->getSelector().getName().c_str(); - IdentifierInfo *II = &Context.Idents.get(name); + // build [classname selector-name] for the name of method. + std::string Name = "["; + Name += MDecl->getClassInterface()->getName(); + Name += " "; + Name += MDecl->getSelector().getName(); + Name += "]"; + IdentifierInfo *II = &Context.Idents.get(Name); assert (II && "ObjcActOnMethodDefinition - selector name is missing"); // The scope passed in may not be a decl scope. Zip up the scope tree until