On Dec 15, 2011, at 10:17 AM, Douglas Gregor wrote:

> Author: dgregor
> Date: Thu Dec 15 12:17:27 2011
> New Revision: 146669
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=146669&view=rev
> Log:
> Extend ObjCInterfaceDecl::DefinitionData to contain a pointer to the
> definition, and implement ObjCInterfaceDecl::getDefinition()
> efficiently based on that.
> 
> Modified:
>    cfe/trunk/include/clang/AST/DeclObjC.h
>    cfe/trunk/lib/AST/DeclObjC.cpp
>    cfe/trunk/lib/Serialization/ASTReaderDecl.cpp
> 
> Modified: cfe/trunk/include/clang/AST/DeclObjC.h
> URL: 
> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/DeclObjC.h?rev=146669&r1=146668&r2=146669&view=diff
> ==============================================================================
> --- cfe/trunk/include/clang/AST/DeclObjC.h (original)
> +++ cfe/trunk/include/clang/AST/DeclObjC.h Thu Dec 15 12:17:27 2011
> 
> +  /// \brief Determine whether this class has only ever been 
> forward-declared.
> +  bool isForwardDecl() const { return Data == 0; }
> +                          
>   /// \brief Determine whether this particular declaration of this class is
>   /// actually also a definition.
> -  bool isThisDeclarationADefinition() const { return Definition.getInt(); }
> +  bool isThisDeclarationADefinition() const { 
> +    return Data == 0 || Data->Definition != this;
> +  }

"Data == 0" means that forward decl. is the only definition. Can you add 
comment about the other condition.

- Fariborz

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to