[cfe-commits] r81536 - /cfe/trunk/lib/Parse/ParseDeclCXX.cpp

Douglas Gregor dgregor at apple.com
Fri Sep 11 15:48:10 PDT 2009


On Sep 11, 2009, at 10:54 AM, Anders Carlsson wrote:

> Author: andersca
> Date: Fri Sep 11 12:54:14 2009
> New Revision: 81536
>
> URL: http://llvm.org/viewvc/llvm-project?rev=81536&view=rev
> Log:
> Just ignore friend templates for now so we won't crash.

I'm not sure if this actually improved over the status quo. A friend  
template such as

   template<typename T> class vector;

is still introducing a class template named "vector" into the current  
scope, so that template-ids referring to that template in that scope,  
e.g.,

   vector<T>

refer to a different class template "vector" than they would if the  
friend template were not present. This led to some really weird  
spurious diagnostics (of the "out-of-line definition does not match  
any declaration in..." kind) in some code I've been trying to parse.  
When the friend templates caused a compiler crash, it was easier to  
comment out that code to limp through ;)

	- Doug



More information about the cfe-commits mailing list