Compiler Error C2249

'identifier' : no accessible path to access member declared in virtual base 'class'

The specified inherited member was inherited from a nonpublic virtual base class or structure.

The following is an example of this error:

class A
{
private:
   void privFunc( void ) {};
public:
   void pubFunc( void ) {};
};
class B : virtual public A {} b;
void main( void )
{
   b.privFunc();        // error, private member of A
   b.pubFunc();         // OK
}