[cfe-commits] r69891 - in /cfe/trunk: lib/Frontend/PCHReader.cpp lib/Sema/SemaDeclObjC.cpp test/PCH/objc_methods.m test/SemaObjC/check-dup-objc-decls-1.m

Douglas Gregor dgregor at apple.com
Thu Apr 23 08:27:00 PDT 2009


On Apr 23, 2009, at 8:15 AM, Steve Naroff wrote:

> Author: snaroff
> Date: Thu Apr 23 10:15:40 2009
> New Revision: 69891
>
> URL: http://llvm.org/viewvc/llvm-project?rev=69891&view=rev
> Log:
> Sema::ActOnStartClassInterface(): Use PushOnScopeChains().
>
> This enables class recognition to work with PCH. I believe this  
> means we can remove Sema::ObjCInterfaceDecls and it's usage within  
> Sema::LookupName(). Will investigate.

That would be great. I'm guessing we can also remove  
Sema::ObjCImplementations, Sema::ObjCCategoryImpls,  
Sema::ObjCProtocols, and Sema::ObjCAliasDecls in the same way, so  
we'll get fully-lazy deserialization of these entities. Somewhere, I  
have a patch that eliminates Sema::ObjCProtocols.

> Modified:
>    cfe/trunk/lib/Frontend/PCHReader.cpp
>    cfe/trunk/lib/Sema/SemaDeclObjC.cpp
>    cfe/trunk/test/PCH/objc_methods.m
>    cfe/trunk/test/SemaObjC/check-dup-objc-decls-1.m
>
> Modified: cfe/trunk/lib/Frontend/PCHReader.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/PCHReader.cpp?rev=69891&r1=69890&r2=69891&view=diff
>
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- cfe/trunk/lib/Frontend/PCHReader.cpp (original)
> +++ cfe/trunk/lib/Frontend/PCHReader.cpp Thu Apr 23 10:15:40 2009
> @@ -2742,7 +2742,7 @@
>   case DeclarationName::ObjCZeroArgSelector:
>   case DeclarationName::ObjCOneArgSelector:
>   case DeclarationName::ObjCMultiArgSelector:
> -    assert(false && "Unable to de-serialize Objective-C selectors");
> +    return DeclarationName(GetSelector(Record, Idx));
>     break;

We don't need the "break" any more.

	- Doug



More information about the cfe-commits mailing list