Compiler Error C2391

'identifier' : 'friend' cannot be used during type definition

The friend declaration includes a complete class declaration. A friend declaration can specify a member function or an elaborated type specifier, but not a complete class declaration.

The following sample generates C2326:

// C2391.cpp  
// compile with: /c  
class D {   
   void func( int );   
};  

class A {  
   friend class B { int i; };   // C2391  

   // OK  
   friend class C;  
   friend void D::func(int);  
};