[cfe-commits] r64820 - in /cfe/trunk: include/clang/AST/Type.h lib/AST/ASTContext.cpp lib/AST/Type.cpp
Fariborz Jahanian
fjahanian at apple.com
Wed Feb 18 16:08:16 PST 2009
On Feb 18, 2009, at 2:58 PM, Chris Lattner wrote:
> On Feb 17, 2009, at 9:21 PM, fjahanian wrote:
>>>> class ExtQualType : public Type, public llvm::FoldingSetNode {
>>>
>>> This looks great!
>>>
>>> In ASTContext::getAddrSpaceQualType, please sure that asking for a
>>> __weak addrspace(1) type works and only results in a single
>>> ExtQualType node. We should never have
>>> ExtQualType(ExtQualType(type)), they should merge together.
>>
>> Yes, my last patch does this. But there is still a problem using:
>>
>> ExtQualType::Profile(ID, T.getTypePtr(), AddressSpace,
>> T.getObjCGCAttr());
>> void *InsertPos = 0;
>> if (ExtQualType *EXTQy = ExtQualTypes.FindNodeOrInsertPos(ID,
>> InsertPos))
>> return QualType(EXTQy, 0);
>>
>> I will demo the problem to you tomorrow.
>
> I just committed some fixes for this, does this work now?
Yes, thanks. For example;
__attribute__((address_space(1))) __strong id w;
__attribute__((address_space(1))) __strong id w1;
Now return the same ExtQualType for both w and w1's types.
- Fariborz
>
>
> -Chris
More information about the cfe-commits
mailing list