[llvm-commits] [llvm] r91397 - /llvm/trunk/lib/Analysis/ProfileInfo.cpp

Chris Lattner clattner at apple.com
Tue Dec 15 10:36:54 PST 2009


On Dec 15, 2009, at 10:34 AM, John McCall wrote:

>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=91397&view=rev
>>> Log:
>>> You can't use typedefs to declare template member specializations,  
>>> and
>>> clang enforces it.
>>
>> Does clang produce a good diagnostic (with a fixit hint) for this  
>> error?
>
> We can't do the fixit hint yet because we don't track locations well  
> enough in nested name specifiers.  This also means the caret is not  
> necessarily helpful.
>
> The diagnostic is
>  error:  cannot use typedef 'ProfileInfo' (a.k.a. 'ProfileInfoT<  
> llvm:: Function,llvm::BasicBlock>') in scope specifier for out-of- 
> line declaration
> which conveys the idea well enough, but is not exactly my finest  
> diagnostic ever.

Ok, please file a bugzilla about this.  This is something that new  
clang++ users are likely to hit if they've been using GCC, so it would  
be very nice to give a really pretty diagnostic to explain what is  
wrong.

Thanks John,

-Chris



More information about the llvm-commits mailing list