[cfe-commits] r42452 - in /cfe/trunk: AST/Expr.cpp Lex/IdentifierTable.cpp Parse/ParseObjc.cpp Sema/Sema.h Sema/SemaDecl.cpp Sema/SemaExpr.cpp clang.xcodeproj/project.pbxproj include/clang/AST/ASTContext.h include/clang/AST/Decl.h include/clang/AST/Expr.h include/clang/Lex/IdentifierTable.h include/clang/Lex/Preprocessor.h include/clang/Parse/Action.h include/clang/Parse/Parser.h
Steve Naroff
snaroff at apple.com
Fri Sep 28 16:28:18 PDT 2007
On Sep 28, 2007, at 4:26 PM, Ted Kremenek wrote:
> Never mind. I think I interpreted this code incorrectly. It looks
> fine to me.
>
Yep. Both foo and foo: map to an IdentifierInfo node.
snaroff
> On Sep 28, 2007, at 4:23 PM, Ted Kremenek wrote:
>
>>
>> On Sep 28, 2007, at 3:22 PM, Steve Naroff wrote:
>>
>>> + IdentifierInfo *getAsIdentifierInfo() const {
>>> + if (InfoPtr & ArgFlags)
>>> + return reinterpret_cast<IdentifierInfo *>(InfoPtr &
>>> ~ArgFlags);
>>> + return 0;
>>> + }
>>> + MultiKeywordSelector *getAsMultiKeywordSelector() const {
>>> + if (InfoPtr & ArgFlags)
>>> + return 0;
>>> + return reinterpret_cast<MultiKeywordSelector *>(InfoPtr);
>>> + }
>>
>> Steve,
>>
>> There looks like there are two bugs here to me. I think you need:
>>
>> InfoPtr & ZeroArg (for the getAsIdentifierInfo() case)
>>
>> and
>>
>> InfoPtr & OneArg (for the getAsMultiKeywordSelector() case)
>
More information about the cfe-commits
mailing list